<html>
<head><meta charset="UTF-8" /><script>
var $gwt_version = "2.5.0";
var $wnd = parent;
var $doc = $wnd.document;
var $moduleName, $moduleBase;
var $strongName = 'E768F872E2CDF9104E4ED8A3B580D66E';
function __gwtStartLoadingFragment(frag) {
    return $moduleBase + 'deferredjs/'  + $strongName + '/' + frag + '.cache.js';
};
function __gwtInstallCode(code) {
  var head = document.getElementsByTagName('head').item(0);
  var script = document.createElement('script');
  script.type = 'text/javascript';
  script.text = code;
  head.appendChild(script);
};
var $stats = $wnd.__gwtStatsEvent ? function(a) {return $wnd.__gwtStatsEvent(a);} : null,
$sessionId = $wnd.__gwtStatsSessionId ? $wnd.__gwtStatsSessionId : null;
$stats && $stats({moduleName:'paperazi',sessionId:$sessionId,subSystem:'startup',evtGroup:'moduleStartup',millis:(new Date()).getTime(),type:'moduleEvalStart'});
</script></head>
<body>
<script><!--
var _, N81_longLit = {l:4194175, m:4194303, h:1048575}, N1_longLit = {l:4194303, m:4194303, h:1048575}, P0_longLit = {l:0, m:0, h:0}, P80_longLit = {l:128, m:0, h:0}, P3e8_longLit = {l:1000, m:0, h:0}, P36ee80_longLit = {l:3600000, m:0, h:0}, P5265c00_longLit = {l:2513920, m:20, h:0}, seedTable = {}, Q$Object = 0, Q$String = 1, Q$Content = 2, Q$Content_$1 = 3, Q$Paper = 4, Q$Paper_$1 = 5, Q$Tag = 6, Q$TagView = 7, Q$TagView_$1 = 8, Q$GotoPageTaggerEventHandler = 9, Q$LoginEventHandler = 10, Q$AnimationScheduler$AnimationHandle = 11, Q$AnimationSchedulerImplTimer$AnimationHandleImpl = 12, Q$AnimationSchedulerImplTimer$AnimationHandleImpl_$1 = 13, Q$AriaAttributeType = 14, Q$PressedValue = 15, Q$SelectedValue = 16, Q$JavaScriptException = 17, Q$RunAsyncCallback = 18, Q$AsyncFragmentLoader$LoadTerminatedHandler = 19, Q$Style$Display = 20, Q$Style$HasCssName = 21, Q$Style$TextAlign = 22, Q$Style$Unit = 23, Q$BlurHandler = 24, Q$ClickHandler = 25, Q$DomEvent$Type = 26, Q$FocusHandler = 27, Q$KeyDownHandler = 28, Q$CloseHandler = 29, Q$HasAttachHandlers = 30, Q$ResizeHandler = 31, Q$ValueChangeHandler = 32, Q$EventHandler = 33, Q$HasHandlers = 34, Q$RequestException = 35, Q$DateTimeFormat = 36, Q$DateTimeFormat$PredefinedFormat = 37, Q$HasDirection$Direction = 38, Q$DateTimeFormat$PatternPart = 39, Q$LongLibBase$LongEmul = 40, Q$SafeHtml = 41, Q$SafeUri = 42, Q$SafeUriString = 43, Q$Event$NativePreviewHandler = 44, Q$EventListener = 45, Q$Timer = 46, Q$IsSerializable = 47, Q$SerializationException = 48, Q$RequestCallbackAdapter$ResponseReader = 49, Q$HasVisibility = 50, Q$HasWidgets = 51, Q$IsRenderable = 52, Q$IsWidget = 53, Q$RootPanel = 54, Q$SimplePanel = 55, Q$UIObject = 56, Q$ValueBoxBase$TextAlignment = 57, Q$Widget = 58, Q$CellGridImpl$Cell = 59, Q$SimpleEventBus$Command = 60, Q$UmbrellaException = 61, Q$Serializable = 62, Q$Boolean = 63, Q$Byte = 64, Q$CharSequence = 65, Q$Character = 66, Q$Comparable = 67, Q$Double = 68, Q$Enum = 69, Q$Float = 70, Q$IllegalArgumentException = 71, Q$Integer = 72, Q$Integer_$1 = 73, Q$Long = 74, Q$Number = 75, Q$Object_$1 = 76, Q$RuntimeException = 77, Q$Short = 78, Q$StackTraceElement = 79, Q$Throwable = 80, Q$Date = 81, Q$List = 82, Q$Map = 83, Q$Map$Entry = 84, Q$Set = 85, CM$ = {};
function newSeed(id){
  return new seedTable[id];
}

function defineSeed(id, superSeed, castableTypeMap){
  var seed = seedTable[id];
  if (seed && !seed.___clazz$) {
    _ = seed.prototype;
  }
   else {
    !seed && (seed = seedTable[id] = function(){
    }
    );
    _ = seed.prototype = superSeed < 0?{}:newSeed(superSeed);
    _.castableTypeMap$ = castableTypeMap;
  }
  for (var i = 3; i < arguments.length; ++i) {
    arguments[i].prototype = _;
  }
  if (seed.___clazz$) {
    _.___clazz$ = seed.___clazz$;
    seed.___clazz$ = null;
  }
}

function makeCastMap(a){
  var result = {};
  for (var i = 0, c = a.length; i < c; ++i) {
    result[a[i]] = 1;
  }
  return result;
}

function nullMethod(){
}

defineSeed(1, -1, CM$);
_.equals$ = function equals(other){
  return this === other;
}
;
_.hashCode$ = function hashCode_0(){
  return getHashCode(this);
}
;
_.toString$ = function toString_0(){
  return this.___clazz$.typeName + '@' + toPowerOfTwoString(this.hashCode$());
}
;
_.toString = function(){
  return this.toString$();
}
;
_.typeMarker$ = nullMethod;
function $doLogIn(this$static, email){
  this$static.email = email;
  $setHeader(this$static, this$static.email);
  $clinit_History();
  !!impl_0 && $newItem(impl_0, 'showCreateArPage');
}

function $doLogOut(this$static){
  this$static.email = null;
  $showLoggedOutView(this$static);
  this$static.createARPageView = null;
}

function $setHeader(this$static, email){
  $clear_0(get('head'));
  $add_1(get('head'), new Banner_0(this$static.eventBus, true, email));
}

function $showLoggedOutView(this$static){
  var presenter, signInPanel;
  signInPanel = new SignInPanel_0;
  presenter = new SignInPanelPresenter_0(this$static.rpcService, this$static.eventBus, signInPanel);
  signInPanel.presenter = presenter;
  $clear_0(get('head'));
  $add_1(get('head'), new Banner_0(this$static.eventBus, false, null));
  $go_1(presenter, get('contentPanel'));
}

function AppController_0(rpcService, eventBus){
  this.eventBus = eventBus;
  this.rpcService = rpcService;
  this.contentPanel = get('contentPanel');
  $clinit_History();
  impl_0?$addValueChangeHandler(impl_0, this):null;
  $addHandler_0(this.eventBus, ($clinit_GotoPageTaggerEvent() , TYPE), new AppController$1_0);
  $addHandler_0(this.eventBus, ($clinit_LoginEvent() , TYPE_0), new AppController$2_0(this));
}

defineSeed(3, 1, makeCastMap([Q$ValueChangeHandler, Q$EventHandler]), AppController_0);
_.onValueChange = function onValueChange(event_0){
  var token;
  token = dynamicCast(event_0.getValue(), Q$String);
  token != null && ($equals(token, 'showCreateArPage')?runAsync(1, new AppController$3_0(this)):$equals(token, 'Tag') && runAsync(2, new AppController$4_0(this)));
}
;
_.contentPanel = null;
_.createARPageView = null;
_.email = null;
_.eventBus = null;
_.rpcService = null;
function AppController$1_0(){
}

defineSeed(4, 1, makeCastMap([Q$GotoPageTaggerEventHandler, Q$EventHandler]), AppController$1_0);
function AppController$2_0(this$0){
  this.this$0 = this$0;
}

defineSeed(5, 1, makeCastMap([Q$LoginEventHandler, Q$EventHandler]), AppController$2_0);
_.this$0 = null;
function AppController$3_0(this$0){
  this.this$0 = this$0;
}

defineSeed(6, 1, makeCastMap([Q$RunAsyncCallback]), AppController$3_0);
_.onFailure = function onFailure(caught){
}
;
_.this$0 = null;
function AppController$4_0(this$0){
  this.this$0 = this$0;
}

defineSeed(7, 1, makeCastMap([Q$RunAsyncCallback]), AppController$4_0);
_.onFailure = function onFailure_0(caught){
}
;
_.this$0 = null;
function $createStreamReader(this$static, encoded){
  var clientSerializationStreamReader;
  clientSerializationStreamReader = new ClientSerializationStreamReader_0(this$static.serializer);
  $prepareToRead(clientSerializationStreamReader, getEncodedInstance(encoded));
  return clientSerializationStreamReader;
}

function $doInvoke(this$static, responseReader, methodName, statsContext, requestData, callback){
  var $e0, ex, iex, rb;
  rb = $doPrepareRequestBuilderImpl(this$static, responseReader, methodName, statsContext, requestData, callback);
  try {
    return throwIfNull('callback', rb.callback) , $doSend(rb, rb.requestData, rb.callback);
  }
   catch ($e0) {
    $e0 = caught_0($e0);
    if (instanceOf($e0, Q$RequestException)) {
      ex = $e0;
      iex = new InvocationException_1('Unable to initiate the asynchronous service invocation (' + methodName + ') -- check the network connection', ex);
      callback.onFailure(iex);
    }
     else 
      throw $e0;
  }
   finally {
    !!$stats && $stats_0($bytesStat(statsContext, methodName, requestData.length, 'requestSent'));
  }
  return null;
}

function $doPrepareRequestBuilderImpl(this$static, responseReader, methodName, statsContext, requestData, callback){
  var responseHandler;
  if (this$static.remoteServiceURL == null) {
    throw new ServiceDefTarget$NoServiceEntryPointSpecifiedException_0;
  }
  responseHandler = new RequestCallbackAdapter_0(this$static, methodName, statsContext, callback, responseReader);
  !this$static.rpcRequestBuilder && (this$static.rpcRequestBuilder = new RpcRequestBuilder_0);
  $create(this$static.rpcRequestBuilder, this$static.remoteServiceURL);
  $setCallback(this$static.rpcRequestBuilder, responseHandler);
  $setHeader_0(this$static.rpcRequestBuilder.builder, 'Content-Type', 'text/x-gwt-rpc; charset=utf-8');
  $setRequestData(this$static.rpcRequestBuilder, requestData);
  return $finish(this$static.rpcRequestBuilder);
}

function RemoteServiceProxy_0(moduleBaseURL, serializer){
  this.moduleBaseURL = moduleBaseURL;
  this.remoteServiceURL = moduleBaseURL + 'services';
  this.serializer = serializer;
  this.serializationPolicyName = '36CB0C920D5F4B60CB6E5697335A402E';
}

function getEncodedInstance(encodedResponse){
  if (encodedResponse.indexOf('//OK') == 0 || encodedResponse.indexOf('//EX') == 0) {
    return $substring(encodedResponse, 4);
  }
  return encodedResponse;
}

defineSeed(10, 1, {});
_.moduleBaseURL = null;
_.remoteServiceURL = null;
_.rpcRequestBuilder = null;
_.rpcToken = null;
_.serializationPolicyName = null;
_.serializer = null;
function $clinit_PaperaziService_Proxy(){
  $clinit_PaperaziService_Proxy = nullMethod;
  SERIALIZER = new PaperaziService_TypeSerializer_0;
}

function $createStreamWriter(this$static){
  var toReturn, clientSerializationStreamWriter;
  toReturn = (clientSerializationStreamWriter = new ClientSerializationStreamWriter_0(this$static.serializer, this$static.moduleBaseURL, this$static.serializationPolicyName) , clientSerializationStreamWriter.objectCount = 0 , $clearImpl(clientSerializationStreamWriter.objectMap) , $clearImpl(clientSerializationStreamWriter.stringMap) , $clear_1(clientSerializationStreamWriter.stringTable) , clientSerializationStreamWriter.encodeBuffer = new StringBuffer_0 , $writeString(clientSerializationStreamWriter, clientSerializationStreamWriter.moduleBaseURL) , $writeString(clientSerializationStreamWriter, clientSerializationStreamWriter.serializationPolicyStrongName) , clientSerializationStreamWriter);
  return toReturn;
}

function $signIn(this$static, username, password, callback){
  var $e0, helper, streamWriter;
  helper = new RemoteServiceProxy$ServiceHelper_0(this$static, 'signIn');
  try {
    streamWriter = $start(helper, 2);
    $writeInt(streamWriter, $addString(streamWriter, 'java.lang.String/2004016611'));
    $writeInt(streamWriter, $addString(streamWriter, 'java.lang.String/2004016611'));
    $writeInt(streamWriter, $addString(streamWriter, username));
    $writeInt(streamWriter, $addString(streamWriter, password));
    $finish_0(helper, callback, ($clinit_RequestCallbackAdapter$ResponseReader() , OBJECT));
  }
   catch ($e0) {
    $e0 = caught_0($e0);
    if (!instanceOf($e0, Q$SerializationException))
      throw $e0;
  }
}

function PaperaziService_Proxy_0(){
  $clinit_PaperaziService_Proxy();
  RemoteServiceProxy_0.call(this, getModuleBaseURL(), SERIALIZER);
}

defineSeed(9, 10, {}, PaperaziService_Proxy_0);
var SERIALIZER;
function $check(this$static, typeSignature){
  if (!this$static.methodMapNative[typeSignature]) {
    throw new SerializationException_0(typeSignature);
  }
}

function $deserialize(this$static, stream, instance, typeSignature){
  $check(this$static, typeSignature);
  $deserialize_0(this$static.methodMapNative, stream, instance, typeSignature);
}

function $getSerializationSignature(this$static, clazz){
  return this$static.signatureMapNative[getHashCode(clazz)];
}

function $instantiate(this$static, stream, typeSignature){
  $check(this$static, typeSignature);
  return $instantiate_0(this$static.methodMapNative, stream, typeSignature);
}

function $serialize(this$static, stream, instance, typeSignature){
  $check(this$static, typeSignature);
  $serialize_0(this$static.methodMapNative, stream, instance, typeSignature);
}

function SerializerBase_0(methodMapNative, signatureMapNative){
  new HashMap_0;
  this.methodMapNative = methodMapNative;
  this.signatureMapNative = signatureMapNative;
}

defineSeed(12, 1, {});
_.methodMapNative = null;
_.signatureMapNative = null;
function $clinit_PaperaziService_TypeSerializer(){
  var result, result_0;
  $clinit_PaperaziService_TypeSerializer = nullMethod;
  methodMapNative_0 = (result = {} , result['com.arsl.client.data.Content/1724445308'] = [instantiate_0, deserialize_0] , result['[Lcom.arsl.client.data.Content;/3655883149'] = [instantiate, deserialize] , result['com.arsl.client.data.PageView/1465264166'] = [instantiate_1, deserialize_1] , result['com.arsl.client.data.Paper/2586069481'] = [instantiate_3, deserialize_3] , result['[Lcom.arsl.client.data.Paper;/961639184'] = [instantiate_2, deserialize_2] , result['com.arsl.client.data.Tag/2387292115'] = [instantiate_7, deserialize_7] , result['com.arsl.client.data.TagView/2343237227'] = [instantiate_5, deserialize_5] , result['[Lcom.arsl.client.data.TagView;/2362485570'] = [instantiate_4, deserialize_4] , result['[Lcom.arsl.client.data.Tag;/4198302192'] = [instantiate_6, deserialize_6] , result['com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException/3936916533'] = [instantiate_8, deserialize_8, serialize] , result['com.google.gwt.user.client.rpc.RpcTokenException/2345075298'] = [instantiate_9, deserialize_9] , result['com.google.gwt.user.client.rpc.XsrfToken/4254043109'] = [undefined, undefined, serialize_0] , result['java.lang.Integer/3438268394'] = [instantiate_11, deserialize_11] , result['[Ljava.lang.Integer;/1574882222'] = [instantiate_10, deserialize_10] , result['java.lang.String/2004016611'] = [instantiate_12, deserialize_13, serialize_1] , result['java.sql.Date/730999118'] = [undefined, undefined, serialize_2] , result);
  signatureMapNative_0 = (result_0 = [] , result_0[getHashCode(Lcom_arsl_client_data_Content_2_classLit)] = 'com.arsl.client.data.Content/1724445308' , result_0[getHashCode(_3Lcom_arsl_client_data_Content_2_classLit)] = '[Lcom.arsl.client.data.Content;/3655883149' , result_0[getHashCode(Lcom_arsl_client_data_PageView_2_classLit)] = 'com.arsl.client.data.PageView/1465264166' , result_0[getHashCode(Lcom_arsl_client_data_Paper_2_classLit)] = 'com.arsl.client.data.Paper/2586069481' , result_0[getHashCode(_3Lcom_arsl_client_data_Paper_2_classLit)] = '[Lcom.arsl.client.data.Paper;/961639184' , result_0[getHashCode(Lcom_arsl_client_data_Tag_2_classLit)] = 'com.arsl.client.data.Tag/2387292115' , result_0[getHashCode(Lcom_arsl_client_data_TagView_2_classLit)] = 'com.arsl.client.data.TagView/2343237227' , result_0[getHashCode(_3Lcom_arsl_client_data_TagView_2_classLit)] = '[Lcom.arsl.client.data.TagView;/2362485570' , result_0[getHashCode(_3Lcom_arsl_client_data_Tag_2_classLit)] = '[Lcom.arsl.client.data.Tag;/4198302192' , result_0[getHashCode(Lcom_google_gwt_user_client_rpc_IncompatibleRemoteServiceException_2_classLit)] = 'com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException/3936916533' , result_0[getHashCode(Lcom_google_gwt_user_client_rpc_RpcTokenException_2_classLit)] = 'com.google.gwt.user.client.rpc.RpcTokenException/2345075298' , result_0[getHashCode(Lcom_google_gwt_user_client_rpc_XsrfToken_2_classLit)] = 'com.google.gwt.user.client.rpc.XsrfToken/4254043109' , result_0[getHashCode(Ljava_lang_Integer_2_classLit)] = 'java.lang.Integer/3438268394' , result_0[getHashCode(_3Ljava_lang_Integer_2_classLit)] = '[Ljava.lang.Integer;/1574882222' , result_0[getHashCode(Ljava_lang_String_2_classLit)] = 'java.lang.String/2004016611' , result_0[getHashCode(Ljava_sql_Date_2_classLit)] = 'java.sql.Date/730999118' , result_0);
}

function PaperaziService_TypeSerializer_0(){
  $clinit_PaperaziService_TypeSerializer();
  SerializerBase_0.call(this, methodMapNative_0, signatureMapNative_0);
}

defineSeed(11, 12, {}, PaperaziService_TypeSerializer_0);
var methodMapNative_0 = null, signatureMapNative_0 = null;
function Content_0(){
}

defineSeed(13, 1, makeCastMap([Q$Content, Q$IsSerializable]), Content_0);
function deserialize(streamReader, instance){
  deserialize_12(streamReader, instance);
}

function instantiate(streamReader){
  var size;
  size = $readInt(streamReader);
  return initDim(_3Lcom_arsl_client_data_Content_2_classLit, makeCastMap([Q$Content_$1, Q$Serializable, Q$Object_$1]), Q$Content, size, 0);
}

function deserialize_0(streamReader, instance){
  setNative(instance, 'server-enhanced-data-1', $getString(streamReader, $readInt(streamReader)));
  $getString(streamReader, $readInt(streamReader));
  $readInt(streamReader);
  $getString(streamReader, $readInt(streamReader));
  $getString(streamReader, $readInt(streamReader));
  $getString(streamReader, $readInt(streamReader));
}

function instantiate_0(streamReader){
  return new Content_0;
}

function PageView_0(){
}

defineSeed(16, 1, makeCastMap([Q$IsSerializable]), PageView_0);
function deserialize_1(streamReader, instance){
  $getString(streamReader, $readInt(streamReader));
  dynamicCast($readObject(streamReader), Q$TagView_$1);
}

function instantiate_1(streamReader){
  return new PageView_0;
}

function Paper_0(){
}

defineSeed(18, 1, makeCastMap([Q$Paper, Q$IsSerializable]), Paper_0);
_.id = 0;
_.name_0 = null;
function deserialize_2(streamReader, instance){
  deserialize_12(streamReader, instance);
}

function instantiate_2(streamReader){
  var size;
  size = $readInt(streamReader);
  return initDim(_3Lcom_arsl_client_data_Paper_2_classLit, makeCastMap([Q$Paper_$1, Q$Serializable, Q$Object_$1]), Q$Paper, size, 0);
}

function deserialize_3(streamReader, instance){
  setNative(instance, 'server-enhanced-data-1', $getString(streamReader, $readInt(streamReader)));
  $getString(streamReader, $readInt(streamReader));
  $readFloat(streamReader);
  instance.id = $readInt(streamReader);
  instance.name_0 = $getString(streamReader, $readInt(streamReader));
  $readFloat(streamReader);
}

function instantiate_3(streamReader){
  return new Paper_0;
}

function Tag_0(){
}

defineSeed(21, 1, makeCastMap([Q$Tag, Q$IsSerializable]), Tag_0);
function TagView_0(){
}

defineSeed(22, 1, makeCastMap([Q$TagView, Q$IsSerializable]), TagView_0);
function deserialize_4(streamReader, instance){
  deserialize_12(streamReader, instance);
}

function instantiate_4(streamReader){
  var size;
  size = $readInt(streamReader);
  return initDim(_3Lcom_arsl_client_data_TagView_2_classLit, makeCastMap([Q$TagView_$1, Q$Serializable, Q$Object_$1]), Q$TagView, size, 0);
}

function deserialize_5(streamReader, instance){
  dynamicCast($readObject(streamReader), Q$Content_$1);
  dynamicCast($readObject(streamReader), Q$Tag);
}

function instantiate_5(streamReader){
  return new TagView_0;
}

function deserialize_6(streamReader, instance){
  deserialize_12(streamReader, instance);
}

function instantiate_6(streamReader){
  var size;
  size = $readInt(streamReader);
  return initDim(_3Lcom_arsl_client_data_Tag_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Tag, size, 0);
}

function deserialize_7(streamReader, instance){
  setNative(instance, 'server-enhanced-data-1', $getString(streamReader, $readInt(streamReader)));
  $readFloat(streamReader);
  $readInt(streamReader);
  $readFloat(streamReader);
  $readFloat(streamReader);
  $readFloat(streamReader);
}

function instantiate_7(streamReader){
  return new Tag_0;
}

function $setSource(this$static, source){
  this$static.source = source;
}

defineSeed(29, 1, {});
_.toString$ = function toString_1(){
  return 'An event type';
}
;
_.source = null;
defineSeed(28, 29, {});
_.revive = function revive(){
  this.dead = false;
  this.source = null;
}
;
_.dead = false;
function $clinit_GotoPageTaggerEvent(){
  $clinit_GotoPageTaggerEvent = nullMethod;
  TYPE = new GwtEvent$Type_0;
}

var TYPE;
function $clinit_LoginEvent(){
  $clinit_LoginEvent = nullMethod;
  TYPE_0 = new GwtEvent$Type_0;
}

function $dispatch(this$static, handler){
  $equals(($clinit_LoginEvent() , 'login'), this$static.eventType)?$doLogIn(handler.this$0, this$static.email):$doLogOut(handler.this$0);
}

function $setEventType(this$static, eventType){
  this$static.eventType = eventType;
}

function LoginEvent_0(){
  $clinit_LoginEvent();
}

defineSeed(30, 28, {}, LoginEvent_0);
_.dispatch = function dispatch_0(handler){
  $dispatch(this, dynamicCast(handler, Q$LoginEventHandler));
}
;
_.getAssociatedType = function getAssociatedType_0(){
  return TYPE_0;
}
;
_.email = null;
_.eventType = null;
var TYPE_0;
function $go_1(this$static, container){
  $clear_0(container);
  $add_1(container, this$static.viewer);
}

function $signIn_0(this$static, email){
  var event_0;
  event_0 = new LoginEvent_0;
  $setEventType(event_0, ($clinit_LoginEvent() , 'login'));
  event_0.email = email;
  $fireEvent_0(this$static.eventBus, event_0);
}

function $trySignIn(this$static, email, pass){
  var callback;
  callback = new SignInPanelPresenter$1_0(this$static, email);
  $signIn(this$static.rpcService, email, pass, callback);
}

function SignInPanelPresenter_0(rpcService, eventBus, signInPanel){
  this.rpcService = rpcService;
  this.eventBus = eventBus;
  this.viewer = signInPanel;
}

defineSeed(36, 1, {}, SignInPanelPresenter_0);
_.eventBus = null;
_.rpcService = null;
_.viewer = null;
function SignInPanelPresenter$1_0(this$0, val$email){
  this.this$0 = this$0;
  this.val$email = val$email;
}

defineSeed(37, 1, {}, SignInPanelPresenter$1_0);
_.onFailure = function onFailure_4(caught){
}
;
_.onSuccess_0 = function onSuccess_4(result){
  dynamicCast(result, Q$Integer_$1)[0].value_0 == 0?alert_0('Login Failed'):$signIn_0(this.this$0, this.val$email);
}
;
_.this$0 = null;
_.val$email = null;
function $setElement(this$static, elem){
  this$static.element = elem;
}

function setStyleName(elem, style, add){
  if (!elem) {
    throw new RuntimeException_0('Null widget handle. If you are creating a composite, ensure that initWidget() has been called.');
  }
  style = $trim(style);
  if (style.length == 0) {
    throw new IllegalArgumentException_1('Style names cannot be empty');
  }
  add?$addClassName(elem, style):$removeClassName(elem, style);
}

function setVisible(elem, visible){
  elem.style.display = visible?'':'none';
  elem.setAttribute('aria-hidden', String(!visible));
}

defineSeed(41, 1, makeCastMap([Q$HasVisibility, Q$UIObject]));
_.resolvePotentialElement = function resolvePotentialElement(){
  throw new UnsupportedOperationException_0;
}
;
_.toString$ = function toString_2(){
  if (!this.element) {
    return '(null handle)';
  }
  return this.element.outerHTML;
}
;
_.element = null;
function $addDomHandler(this$static, handler, type){
  var typeInt;
  typeInt = $eventGetTypeInt(type.name_0);
  typeInt == -1?this$static.element:this$static.eventsToSink == -1?$sinkEvents_0(this$static.element, typeInt | (this$static.element.__eventBits || 0)):(this$static.eventsToSink |= typeInt);
  return $addHandler_0(!this$static.handlerManager?(this$static.handlerManager = new HandlerManager_0(this$static)):this$static.handlerManager, type, handler);
}

function $fireEvent(this$static, event_0){
  !!this$static.handlerManager && $fireEvent_0(this$static.handlerManager, event_0);
}

function $onAttach(this$static){
  var bitsToAdd;
  if (this$static.isAttached()) {
    throw new IllegalStateException_1("Should only call onAttach when the widget is detached from the browser's document");
  }
  this$static.attached = true;
  $setEventListener(this$static.element, this$static);
  bitsToAdd = this$static.eventsToSink;
  this$static.eventsToSink = -1;
  bitsToAdd > 0 && (this$static.eventsToSink == -1?$sinkEvents_0(this$static.element, bitsToAdd | (this$static.element.__eventBits || 0)):(this$static.eventsToSink |= bitsToAdd));
  this$static.doAttachChildren();
  this$static.onLoad();
}

function $onBrowserEvent(this$static, event_0){
  var related;
  switch ($eventGetTypeInt(event_0.type)) {
    case 16:
    case 32:
      related = event_0.relatedTarget || (event_0.type == 'mouseout'?event_0.toElement:event_0.fromElement);
      if (!!related && isOrHasChildImpl(this$static.element, related)) {
        return;
      }

  }
  fireNativeEvent(event_0, this$static, this$static.element);
}

function $onDetach(this$static){
  if (!this$static.isAttached()) {
    throw new IllegalStateException_1("Should only call onDetach when the widget is attached to the browser's document");
  }
  try {
    this$static.onUnload();
  }
   finally {
    try {
      this$static.doDetachChildren();
    }
     finally {
      this$static.element.__listener = null;
      this$static.attached = false;
    }
  }
}

function $removeFromParent(this$static){
  if (!this$static.parent_0) {
    ($clinit_RootPanel() , $contains_0(widgetsToDetach, this$static)) && detachNow(this$static);
  }
   else if (instanceOf(this$static.parent_0, Q$HasWidgets)) {
    dynamicCast(this$static.parent_0, Q$HasWidgets).remove(this$static);
  }
   else if (this$static.parent_0) {
    throw new IllegalStateException_1("This widget's parent does not implement HasWidgets");
  }
}

function $setParent(this$static, parent_0){
  var oldParent;
  oldParent = this$static.parent_0;
  if (!parent_0) {
    try {
      !!oldParent && oldParent.isAttached() && this$static.onDetach();
    }
     finally {
      this$static.parent_0 = null;
    }
  }
   else {
    if (oldParent) {
      throw new IllegalStateException_1('Cannot set a new parent without first clearing the old parent');
    }
    this$static.parent_0 = parent_0;
    parent_0.isAttached() && this$static.onAttach();
  }
}

function $sinkEvents(this$static, eventBitsToAdd){
  this$static.eventsToSink == -1?$sinkEvents_0(this$static.element, eventBitsToAdd | (this$static.element.__eventBits || 0)):(this$static.eventsToSink |= eventBitsToAdd);
}

defineSeed(40, 41, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]));
_.doAttachChildren = function doAttachChildren(){
}
;
_.doDetachChildren = function doDetachChildren(){
}
;
_.fireEvent_0 = function fireEvent(event_0){
  $fireEvent(this, event_0);
}
;
_.isAttached = function isAttached(){
  return this.attached;
}
;
_.onAttach = function onAttach(){
  $onAttach(this);
}
;
_.onBrowserEvent = function onBrowserEvent(event_0){
  $onBrowserEvent(this, event_0);
}
;
_.onDetach = function onDetach(){
  $onDetach(this);
}
;
_.onLoad = function onLoad(){
}
;
_.onUnload = function onUnload(){
}
;
_.attached = false;
_.eventsToSink = 0;
_.handlerManager = null;
_.parent_0 = null;
function $initWidget(this$static, widget){
  var elem;
  if (this$static.widget) {
    throw new IllegalStateException_1('Composite.initWidget() may only be called once.');
  }
  instanceOf(widget, Q$IsRenderable) && dynamicCast(widget, Q$IsRenderable);
  $removeFromParent(widget);
  elem = widget.element;
  this$static.element = elem;
  isPotential(elem) && $setResolver(($clinit_PotentialElement() , elem), this$static);
  this$static.widget = widget;
  $setParent(widget, this$static);
}

function $isAttached(this$static){
  if (this$static.widget) {
    return this$static.widget.isAttached();
  }
  return false;
}

defineSeed(39, 40, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsRenderable, Q$IsWidget, Q$UIObject, Q$Widget]));
_.isAttached = function isAttached_0(){
  return $isAttached(this);
}
;
_.onAttach = function onAttach_0(){
  if (this.eventsToSink != -1) {
    $sinkEvents(this.widget, this.eventsToSink);
    this.eventsToSink = -1;
  }
  this.widget.onAttach();
  this.element.__listener = this;
  this.onLoad();
}
;
_.onBrowserEvent = function onBrowserEvent_0(event_0){
  $onBrowserEvent(this, event_0);
  this.widget.onBrowserEvent(event_0);
}
;
_.onDetach = function onDetach_0(){
  this.widget.onDetach();
}
;
_.resolvePotentialElement = function resolvePotentialElement_0(){
  $setElement(this, this.widget.resolvePotentialElement());
  return this.element;
}
;
_.widget = null;
function Banner_0(eventBus, isLoggedIn, email){
  var btnSignOut, lblWelcome, panel;
  panel = new HorizontalPanel_0;
  $add_3(panel, new Label_1);
  if (isLoggedIn) {
    lblWelcome = new Label_0;
    $setTextOrHtml(lblWelcome.directionalTextHelper, 'Welcome ' + email);
    btnSignOut = new Button_1;
    $addDomHandler(btnSignOut, new Banner$1_0(eventBus), ($clinit_ClickEvent() , $clinit_ClickEvent() , TYPE_2));
    $add_3(panel, lblWelcome);
    $add_3(panel, btnSignOut);
  }
  $initWidget(this, panel);
}

defineSeed(38, 39, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsRenderable, Q$IsWidget, Q$UIObject, Q$Widget]), Banner_0);
function Banner$1_0(val$eventBus){
  this.val$eventBus = val$eventBus;
}

defineSeed(42, 1, makeCastMap([Q$ClickHandler, Q$EventHandler]), Banner$1_0);
_.onClick = function onClick(event_0){
  var ev;
  ev = new LoginEvent_0;
  $setEventType(ev, ($clinit_LoginEvent() , 'logout'));
  $fireEvent_0(this.val$eventBus, ev);
}
;
_.val$eventBus = null;
function $onClick(this$static){
  $trySignIn(this$static.presenter, $getPropertyString(this$static.txtEmail.element, 'value'), $getPropertyString(this$static.txtPass.element, 'value'));
}

function SignInPanel_0(){
  $initWidget(this, $build_f_HTMLPanel1_1(new SignInPanel_SignInPanelUiBinderImpl$Widgets_0(this)));
}

defineSeed(58, 39, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsRenderable, Q$IsWidget, Q$UIObject, Q$Widget]), SignInPanel_0);
_.presenter = null;
_.txtEmail = null;
_.txtPass = null;
--></script>
<script><!--
function $build_f_HTMLPanel1_1(this$static){
  var attachRecord0, f_HTMLPanel1, f_VerticalPanel2, f_HorizontalPanel3, f_Label4, txtEmail, f_HorizontalPanel5, f_Label6, txtPass, btnSignIn, sb;
  f_HTMLPanel1 = new HTMLPanel_0($html2(this$static.domId0).html);
  attachRecord0 = attachToDom(f_HTMLPanel1.element);
  $get_0(this$static.domId0Element);
  attachRecord0.origParent?$insertBefore(attachRecord0.origParent, attachRecord0.element, attachRecord0.origSibling):orphan(attachRecord0.element);
  $addAndReplaceElement(f_HTMLPanel1, (f_VerticalPanel2 = new VerticalPanel_0 , $add_5(f_VerticalPanel2, (f_HorizontalPanel3 = new HorizontalPanel_0 , $add_3(f_HorizontalPanel3, (f_Label4 = new Label_0 , $setTextOrHtml(f_Label4.directionalTextHelper, 'E-Mail:') , setStyleName(f_Label4.element, 'GJV0-WTBB', true) , f_Label4)) , $add_3(f_HorizontalPanel3, (txtEmail = new TextBox_0 , setStyleName(txtEmail.element, 'GJV0-WTBB', true) , this$static.owner.txtEmail = txtEmail , txtEmail)) , f_HorizontalPanel3)) , $add_5(f_VerticalPanel2, (f_HorizontalPanel5 = new HorizontalPanel_0 , $add_3(f_HorizontalPanel5, (f_Label6 = new Label_0 , $setTextOrHtml(f_Label6.directionalTextHelper, 'Password:') , setStyleName(f_Label6.element, 'GJV0-WTBB', true) , f_Label6)) , $add_3(f_HorizontalPanel5, (txtPass = new PasswordTextBox_0 , setStyleName(txtPass.element, 'GJV0-WTBB', true) , this$static.owner.txtPass = txtPass , txtPass)) , f_HorizontalPanel5)) , $add_5(f_VerticalPanel2, (btnSignIn = new Button_0 , $setHTML(btnSignIn, (sb = new StringBuilder_0 , $append_0(sb.data, 'Sign In') , new OnlyToBeUsedInGeneratedCodeStringBlessedAsSafeHtml_0($toString(sb.data))).html) , btnSignIn.element['className'] = 'GJV0-WTBD' , $addDomHandler(btnSignIn, this$static.handlerMethodWithNameVeryUnlikelyToCollideWithUserFieldNames1, ($clinit_ClickEvent() , $clinit_ClickEvent() , TYPE_2)) , btnSignIn)) , setStyleName(f_VerticalPanel2.element, 'GJV0-WTBA', true) , f_VerticalPanel2), $get_0(this$static.domId0Element));
  return f_HTMLPanel1;
}

function SignInPanel_SignInPanelUiBinderImpl$Widgets_0(owner){
  this.handlerMethodWithNameVeryUnlikelyToCollideWithUserFieldNames1 = new SignInPanel_SignInPanelUiBinderImpl$Widgets$1_0(this);
  this.owner = owner;
  this.style_0 = (new SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator_0 , $clinit_SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator$styleInitializer() , style_2);
  $ensureInjected_1(this.style_0);
  this.domId0 = $createUniqueId($doc);
  this.domId0Element = new LazyDomElement_0(this.domId0);
}

defineSeed(59, 1, {}, SignInPanel_SignInPanelUiBinderImpl$Widgets_0);
_.domId0 = null;
_.domId0Element = null;
_.owner = null;
_.style_0 = null;
function SignInPanel_SignInPanelUiBinderImpl$Widgets$1_0(this$1){
  this.this$1 = this$1;
}

defineSeed(60, 1, makeCastMap([Q$ClickHandler, Q$EventHandler]), SignInPanel_SignInPanelUiBinderImpl$Widgets$1_0);
_.onClick = function onClick_3(event_0){
  $onClick(this.this$1.owner);
}
;
_.this$1 = null;
function SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator_0(){
}

defineSeed(61, 1, {}, SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator_0);
var style_2 = null;
function $ensureInjected_1(this$static){
  if (!this$static.injected) {
    this$static.injected = true;
    $clinit_StyleInjector();
    inject_0(($clinit_LocaleInfo() , '.GJV0-WTBC{font-weight:bold;}.GJV0-WTBB{width:10em;margin:4px;}.GJV0-WTBA{border-style:solid;border-width:1px;}.GJV0-WTBD{float:right;}'));
    return true;
  }
  return false;
}

function SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator$1_0(){
}

defineSeed(62, 1, {}, SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator$1_0);
_.injected = false;
function $clinit_SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator$styleInitializer(){
  $clinit_SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator$styleInitializer = nullMethod;
  style_2 = new SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator$1_0;
}

function $html2(arg0){
  var sb;
  sb = new StringBuilder_0;
  $append_0(sb.data, "<span id='");
  $append_4(sb, htmlEscape(arg0));
  $append_0(sb.data, "'><\/span>");
  return new OnlyToBeUsedInGeneratedCodeStringBlessedAsSafeHtml_0($toString(sb.data));
}

function $clinit_Timer(){
  $clinit_Timer = nullMethod;
  timers = new ArrayList_0;
  addCloseHandler(new Timer$1_0);
}

function $cancel_0(this$static){
  this$static.isRepeating?clearInterval_0(this$static.timerId):clearTimeout_0(this$static.timerId);
  $remove_11(timers, this$static);
}

function $schedule(this$static, delayMillis){
  if (delayMillis < 0) {
    throw new IllegalArgumentException_1('must be non-negative');
  }
  this$static.isRepeating?clearInterval_0(this$static.timerId):clearTimeout_0(this$static.timerId);
  $remove_11(timers, this$static);
  this$static.isRepeating = false;
  this$static.timerId = createTimeout(this$static, delayMillis);
  $add_7(timers, this$static);
}

function clearInterval_0(id){
  $wnd.clearInterval(id);
}

function clearTimeout_0(id){
  $wnd.clearTimeout(id);
}

function createTimeout(timer, delay){
  return $wnd.setTimeout($entry(function(){
    timer.fire();
  }
  ), delay);
}

defineSeed(72, 1, makeCastMap([Q$Timer]));
_.fire = function fire(){
  this.isRepeating || $remove_11(timers, this);
  this.run();
}
;
_.isRepeating = false;
_.timerId = 0;
var timers;
function Enum_0(name_0, ordinal){
  this.name_0 = name_0;
  this.ordinal = ordinal;
}

defineSeed(116, 1, makeCastMap([Q$Serializable, Q$Comparable, Q$Enum]));
_.equals$ = function equals_0(other){
  return this === other;
}
;
_.hashCode$ = function hashCode_1(){
  return getHashCode(this);
}
;
_.toString$ = function toString_3(){
  return this.name_0;
}
;
_.name_0 = null;
_.ordinal = 0;
function currentTimeMillis(){
  return (new Date).getTime();
}

function $initCause(this$static, cause){
  if (this$static.cause) {
    throw new IllegalStateException_1("Can't overwrite cause");
  }
  if (cause == this$static) {
    throw new IllegalArgumentException_1('Self-causation not permitted');
  }
  this$static.cause = cause;
  return this$static;
}

function $setStackTrace(stackTrace){
  var c, copy, i;
  copy = initDim(_3Ljava_lang_StackTraceElement_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$StackTraceElement, stackTrace.length, 0);
  for (i = 0 , c = stackTrace.length; i < c; ++i) {
    if (!stackTrace[i]) {
      throw new NullPointerException_0;
    }
    copy[i] = stackTrace[i];
  }
}

defineSeed(149, 1, makeCastMap([Q$Serializable, Q$Throwable]));
_.getMessage = function getMessage(){
  return this.detailMessage;
}
;
_.toString$ = function toString_4(){
  var className, msg;
  return className = this.___clazz$.typeName , msg = this.getMessage() , msg != null?className + ': ' + msg:className;
}
;
_.cause = null;
_.detailMessage = null;
function Exception_0(message){
  $fillInStackTrace();
  this.detailMessage = message;
}

defineSeed(148, 149, makeCastMap([Q$Serializable, Q$Throwable]));
function RuntimeException_0(message){
  Exception_0.call(this, message);
}

function RuntimeException_1(message, cause){
  $fillInStackTrace();
  this.cause = cause;
  this.detailMessage = message;
}

defineSeed(147, 148, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), RuntimeException_0);
function JavaScriptException_0(e){
  $fillInStackTrace();
  this.e = e;
  this.description = '';
  $createStackTrace(this);
}

function getExceptionDescription(e){
  return instanceOfJso(e)?getExceptionDescription0(dynamicCastJso(e)):e + '';
}

function getExceptionDescription0(e){
  return e == null?null:e.message;
}

function getExceptionName(e){
  var maybeJsoInvocation;
  return e == null?'null':instanceOfJso(e)?getExceptionName0(dynamicCastJso(e)):instanceOf(e, Q$String)?'String':(maybeJsoInvocation = e , isJavaObject(maybeJsoInvocation)?maybeJsoInvocation.___clazz$:Lcom_google_gwt_core_client_JavaScriptObject_2_classLit).typeName;
}

function getExceptionName0(e){
  return e == null?null:e.name;
}

function getExceptionProperties(e){
  return instanceOfJso(e)?$getProperties(dynamicCastJso(e)):'';
}

defineSeed(146, 147, makeCastMap([Q$JavaScriptException, Q$Serializable, Q$RuntimeException, Q$Throwable]), JavaScriptException_0);
_.getMessage = function getMessage_0(){
  return this.message_0 == null && (this.name_0 = getExceptionName(this.e) , this.description = this.description + ': ' + getExceptionDescription(this.e) , this.message_0 = '(' + this.name_0 + ') ' + getExceptionProperties(this.e) + this.description , undefined) , this.message_0;
}
;
_.description = '';
_.e = null;
_.message_0 = null;
_.name_0 = null;
function equals__devirtual$(this$static, other){
  var maybeJsoInvocation;
  return maybeJsoInvocation = this$static , isJavaObject(maybeJsoInvocation)?maybeJsoInvocation.equals$(other):maybeJsoInvocation === other;
}

function hashCode__devirtual$(this$static){
  var maybeJsoInvocation;
  return maybeJsoInvocation = this$static , isJavaObject(maybeJsoInvocation)?maybeJsoInvocation.hashCode$():getHashCode(maybeJsoInvocation);
}

function $push(this$static, value){
  this$static[this$static.length] = value;
}

defineSeed(154, 1, {});
function $clinit_AsyncFragmentLoader(){
  $clinit_AsyncFragmentLoader = nullMethod;
  BROWSER_LOADER = new AsyncFragmentLoader_0(3, initValues(_3I_classLit, makeCastMap([Q$Serializable]), -1, []), new XhrLoadingStrategy_0);
}

function $clearRequestsAlreadyLoaded(this$static){
  var offset;
  while ($size(this$static.requestedExclusives) > 0 && this$static.isLoaded[$peek(this$static.requestedExclusives)]) {
    offset = $remove(this$static.requestedExclusives);
    offset < this$static.pendingDownloadErrorHandlers.length && setCheck(this$static.pendingDownloadErrorHandlers, offset, null);
  }
}

function $initializeRemainingInitialFragments(this$static){
  var sp, sp$array, sp$index, sp$max;
  if (!this$static.remainingInitialFragments) {
    this$static.remainingInitialFragments = new AsyncFragmentLoader$BoundedIntQueue_0(this$static.initialLoadSequence.length + 1);
    for (sp$array = this$static.initialLoadSequence , sp$index = 0 , sp$max = sp$array.length; sp$index < sp$max; ++sp$index) {
      sp = sp$array[sp$index];
      $add(this$static.remainingInitialFragments, sp);
    }
    $add(this$static.remainingInitialFragments, this$static.numEntries);
  }
}

function $inject(this$static, splitPoint, loadErrorHandler){
  setCheck(this$static.pendingDownloadErrorHandlers, splitPoint, loadErrorHandler);
  $isInitial(this$static, splitPoint) || $add(this$static.requestedExclusives, splitPoint);
  $startLoadingNextFragment(this$static);
}

function $isEmpty(array){
  var i;
  for (i = 0; i < array.length; ++i) {
    if (array[i]) {
      return false;
    }
  }
  return true;
}

function $isInitial(this$static, splitPoint){
  var sp, sp$array, sp$index, sp$max;
  if (splitPoint == this$static.numEntries) {
    return true;
  }
  for (sp$array = this$static.initialLoadSequence , sp$index = 0 , sp$max = sp$array.length; sp$index < sp$max; ++sp$index) {
    sp = sp$array[sp$index];
    if (sp == splitPoint) {
      return true;
    }
  }
  return false;
}

function $logEventProgress(eventGroup, fragment){
  !!$stats && stats($createStatsEvent(eventGroup, 'begin', fragment, -1));
}

function $onLoadImpl(this$static, fragment){
  var callback, callback$index, callback$max, callbacks, logGroup;
  logGroup = fragment == this$static.numEntries?'leftoversDownload':'download' + fragment;
  !!$stats && stats($createStatsEvent(logGroup, 'end', fragment, -1));
  fragment < this$static.pendingDownloadErrorHandlers.length && setCheck(this$static.pendingDownloadErrorHandlers, fragment, null);
  $isInitial(this$static, fragment) && $remove(this$static.remainingInitialFragments);
  this$static.fragmentLoading = -1;
  this$static.isLoaded[fragment] = true;
  $startLoadingNextFragment(this$static);
  callbacks = this$static.allCallbacks[fragment];
  if (callbacks != null) {
    !!$stats && stats($createStatsEvent('runCallbacks' + fragment, 'begin', -1, -1));
    setCheck(this$static.allCallbacks, fragment, null);
    for (callback$index = 0 , callback$max = callbacks.length; callback$index < callback$max; ++callback$index) {
      callback = callbacks[callback$index];
      dynamicCast(callback, Q$RunAsyncCallback).onSuccess();
    }
    !!$stats && stats($createStatsEvent('runCallbacks' + fragment, 'end', -1, -1));
  }
}

function $runAsyncImpl(this$static, fragment, callback){
  var callbacks;
  if (this$static.isLoaded[fragment]) {
    callback.onSuccess();
    return;
  }
  callbacks = this$static.allCallbacks[fragment];
  callbacks == null && (callbacks = setCheck(this$static.allCallbacks, fragment, initDim(_3Lcom_google_gwt_core_client_RunAsyncCallback_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$RunAsyncCallback, 0, 0)));
  setCheck(callbacks, callbacks.length, callback);
  !!this$static.pendingDownloadErrorHandlers[fragment] || $inject(this$static, fragment, new AsyncFragmentLoader$1_0(this$static, fragment));
}

function $startLoadingFragment(this$static, fragment){
  this$static.fragmentLoading = fragment;
  $logEventProgress(fragment == this$static.numEntries?'leftoversDownload':'download' + fragment, fragment);
  $startLoadingFragment_0(this$static.loadingStrategy, fragment, new AsyncFragmentLoader$ResetAfterDownloadFailure_0(this$static, fragment));
}

function $startLoadingNextFragment(this$static){
  if (this$static.fragmentLoading >= 0) {
    return;
  }
  $initializeRemainingInitialFragments(this$static);
  $clearRequestsAlreadyLoaded(this$static);
  if ($isEmpty(this$static.pendingDownloadErrorHandlers)) {
    return;
  }
  if ($size(this$static.remainingInitialFragments) > 0) {
    $startLoadingFragment(this$static, $peek(this$static.remainingInitialFragments));
    return;
  }
  if ($size(this$static.requestedExclusives) > 0) {
    $startLoadingFragment(this$static, $remove(this$static.requestedExclusives));
    return;
  }
}

function AsyncFragmentLoader_0(numEntries, initialLoadSequence, loadingStrategy){
  var numEntriesPlusOne;
  this.numEntries = numEntries;
  this.initialLoadSequence = initialLoadSequence;
  this.loadingStrategy = loadingStrategy;
  numEntriesPlusOne = numEntries + 1;
  this.allCallbacks = initDim(_3_3Ljava_lang_Object_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Object_$1, numEntriesPlusOne, 0);
  this.requestedExclusives = new AsyncFragmentLoader$BoundedIntQueue_0(numEntriesPlusOne);
  this.isLoaded = initDim(_3Z_classLit, makeCastMap([Q$Serializable]), -1, numEntriesPlusOne, 2);
  this.pendingDownloadErrorHandlers = initDim(_3Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$LoadTerminatedHandler_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$AsyncFragmentLoader$LoadTerminatedHandler, numEntriesPlusOne, 0);
}

function onLoad_0(fragment){
  $onLoadImpl(BROWSER_LOADER, fragment);
}

function runAsync(fragment, callback){
  $clinit_AsyncFragmentLoader();
  $runAsyncImpl(BROWSER_LOADER, fragment, callback);
}

defineSeed(155, 1, {}, AsyncFragmentLoader_0);
_.allCallbacks = null;
_.fragmentLoading = -1;
_.initialLoadSequence = null;
_.isLoaded = null;
_.loadingStrategy = null;
_.numEntries = 0;
_.pendingDownloadErrorHandlers = null;
_.remainingInitialFragments = null;
_.requestedExclusives = null;
var BROWSER_LOADER;
function AsyncFragmentLoader$1_0(this$0, val$fragment){
  this.this$0 = this$0;
  this.val$fragment = val$fragment;
}

defineSeed(156, 1, makeCastMap([Q$AsyncFragmentLoader$LoadTerminatedHandler]), AsyncFragmentLoader$1_0);
_.loadTerminated = function loadTerminated(reason){
  var callback, callback$index, callback$max, callbacks;
  callbacks = this.this$0.allCallbacks[this.val$fragment];
  if (callbacks != null) {
    setCheck(this.this$0.allCallbacks, this.val$fragment, null);
    for (callback$index = 0 , callback$max = callbacks.length; callback$index < callback$max; ++callback$index) {
      callback = callbacks[callback$index];
      dynamicCast(callback, Q$RunAsyncCallback).onFailure(reason);
    }
  }
}
;
_.this$0 = null;
_.val$fragment = 0;
function $add(this$static, x){
  this$static.array[this$static.write_0++] = x;
}

function $clear(this$static){
  this$static.read = 0;
  this$static.write_0 = 0;
}

function $peek(this$static){
  return this$static.array[this$static.read];
}

function $remove(this$static){
  return this$static.array[this$static.read++];
}

function $size(this$static){
  return this$static.write_0 - this$static.read;
}

function AsyncFragmentLoader$BoundedIntQueue_0(maxPuts){
  this.array = initDim(_3I_classLit, makeCastMap([Q$Serializable]), -1, maxPuts, 1);
}

defineSeed(157, 1, {}, AsyncFragmentLoader$BoundedIntQueue_0);
_.array = null;
_.read = 0;
_.write_0 = 0;
function AsyncFragmentLoader$HttpDownloadFailure_0(url, statusCode, statusText){
  $fillInStackTrace();
  this.detailMessage = 'Download of ' + url + ' failed with status ' + statusCode + '(' + statusText + ')';
}

defineSeed(158, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), AsyncFragmentLoader$HttpDownloadFailure_0);
function AsyncFragmentLoader$HttpInstallFailure_0(url, text, rootCause){
  RuntimeException_1.call(this, 'Install of ' + url + ' failed with text ' + text, rootCause);
}

defineSeed(159, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), AsyncFragmentLoader$HttpInstallFailure_0);
function $loadTerminated(this$static, reason){
  var $e0, e, handler, handler$array, handler$index, handler$max, handlersToRun, lastException;
  if (this$static.this$0.fragmentLoading != this$static.fragment_0) {
    return;
  }
  handlersToRun = this$static.this$0.pendingDownloadErrorHandlers;
  this$static.this$0.pendingDownloadErrorHandlers = initDim(_3Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$LoadTerminatedHandler_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$AsyncFragmentLoader$LoadTerminatedHandler, this$static.this$0.numEntries + 1, 0);
  $clear(this$static.this$0.requestedExclusives);
  this$static.this$0.fragmentLoading = -1;
  lastException = null;
  for (handler$array = handlersToRun , handler$index = 0 , handler$max = handlersToRun.length; handler$index < handler$max; ++handler$index) {
    handler = handler$array[handler$index];
    if (handler) {
      try {
        handler.loadTerminated(reason);
      }
       catch ($e0) {
        $e0 = caught_0($e0);
        if (instanceOf($e0, Q$RuntimeException)) {
          e = $e0;
          lastException = e;
        }
         else 
          throw $e0;
      }
    }
  }
  if (lastException) {
    throw lastException;
  }
}

function AsyncFragmentLoader$ResetAfterDownloadFailure_0(this$0, myFragment){
  this.this$0 = this$0;
  this.fragment_0 = myFragment;
}

defineSeed(160, 1, makeCastMap([Q$AsyncFragmentLoader$LoadTerminatedHandler]), AsyncFragmentLoader$ResetAfterDownloadFailure_0);
_.loadTerminated = function loadTerminated_0(reason){
  $loadTerminated(this, reason);
}
;
_.fragment_0 = 0;
_.this$0 = null;
function $createStatsEvent(eventGroup, type, fragment, size){
  var evt = {moduleName:$moduleName, sessionId:$sessionId, subSystem:'runAsync', evtGroup:eventGroup, millis:(new Date).getTime(), type:type};
  fragment >= 0 && (evt.fragment = fragment);
  size >= 0 && (evt.size = size);
  return evt;
}

function stats(data){
  return $stats(data);
}

function apply(jsFunction, thisObj, arguments_0){
  return jsFunction.apply(thisObj, arguments_0);
  var __0;
}

function enter(){
  var now;
  if (entryDepth != 0) {
    now = currentTimeMillis();
    if (now - watchdogEntryDepthLastScheduled > 2000) {
      watchdogEntryDepthLastScheduled = now;
      watchdogEntryDepthTimerId = watchdogEntryDepthSchedule();
    }
  }
  if (entryDepth++ == 0) {
    $flushEntryCommands(($clinit_SchedulerImpl() , INSTANCE_0));
    return true;
  }
  return false;
}

function entry_0(jsFunction){
  return function(){
    try {
      return entry0(jsFunction, this, arguments);
    }
     catch (e) {
      throw e;
    }
  }
  ;
}

function entry0(jsFunction, thisObj, arguments_0){
  var initialEntry;
  initialEntry = enter();
  try {
    return apply(jsFunction, thisObj, arguments_0);
  }
   finally {
    exit(initialEntry);
  }
}

function exit(initialEntry){
  initialEntry && $flushFinallyCommands(($clinit_SchedulerImpl() , INSTANCE_0));
  --entryDepth;
  if (initialEntry) {
    if (watchdogEntryDepthTimerId != -1) {
      watchdogEntryDepthCancel(watchdogEntryDepthTimerId);
      watchdogEntryDepthTimerId = -1;
    }
  }
}

function getHashCode(o){
  return o.$H || (o.$H = ++sNextHashId);
}

function getModuleBaseURL(){
  var key = '__gwtDevModeHook:' + $moduleName + ':moduleBase';
  var global = $wnd || self;
  return global[key] || $moduleBase;
}

function watchdogEntryDepthCancel(timerId){
  $wnd.clearTimeout(timerId);
}

function watchdogEntryDepthSchedule(){
  return $wnd.setTimeout(function(){
    entryDepth != 0 && (entryDepth = 0);
    watchdogEntryDepthTimerId = -1;
  }
  , 10);
}

var entryDepth = 0, sNextHashId = 0, watchdogEntryDepthLastScheduled = 0, watchdogEntryDepthTimerId = -1;
function $startLoadingFragment_0(this$static, fragment, loadErrorHandler){
  var connector, manualRetry, request, url, ser;
  url = gwtStartLoadingFragment(fragment, loadErrorHandler);
  if (url == null) {
    return;
  }
  manualRetry = (ser = $get(this$static.manualRetryNumbers, fragment) , this$static.manualRetryNumbers[fragment] = ser + 1 , ser);
  if (manualRetry > 0) {
    connector = url.indexOf('?') != -1?38:63;
    url += String.fromCharCode(connector) + 'manualRetry=' + manualRetry;
  }
  request = new LoadingStrategyBase$RequestData_0(url, loadErrorHandler);
  $tryDownload(request);
}

function gwtStartLoadingFragment(fragment, loadErrorHandler){
  function loadFailed(e){
    loadErrorHandler.loadTerminated(e);
  }

  return __gwtStartLoadingFragment(fragment, $entry(loadFailed));
}

defineSeed(163, 1, {});
function $get(this$static, x){
  return this$static[x]?this$static[x]:0;
}

function $onLoadError(this$static, e, mayRetry){
  var connector;
  if (mayRetry) {
    ++this$static.retryCount;
    if (this$static.retryCount <= this$static.maxRetryCount) {
      connector = this$static.originalUrl.indexOf('?') != -1?38:63;
      this$static.url = this$static.originalUrl + String.fromCharCode(connector) + 'autoRetry=' + this$static.retryCount;
      $tryDownload(this$static);
      return;
    }
  }
  $loadTerminated(this$static.errorHandler, e);
}

function $tryInstall(this$static, code){
  var $e0, e, textIntro;
  try {
    __gwtInstallCode(code);
  }
   catch ($e0) {
    $e0 = caught_0($e0);
    if (instanceOf($e0, Q$RuntimeException)) {
      e = $e0;
      textIntro = code;
      code != null && code.length > 200 && (textIntro = code.substr(0, 200 - 0) + '...');
      $onLoadError(this$static, new AsyncFragmentLoader$HttpInstallFailure_0(this$static.url, textIntro, e), false);
    }
     else 
      throw $e0;
  }
}

function LoadingStrategyBase$RequestData_0(url, errorHandler){
  this.url = url;
  this.originalUrl = url;
  this.errorHandler = errorHandler;
  this.maxRetryCount = 3;
  this.retryCount = 0;
}

defineSeed(165, 1, {}, LoadingStrategyBase$RequestData_0);
_.errorHandler = null;
_.maxRetryCount = 0;
_.originalUrl = null;
_.retryCount = 0;
_.url = null;
function $clinit_SchedulerImpl(){
  $clinit_SchedulerImpl = nullMethod;
  INSTANCE_0 = new SchedulerImpl_0;
}

function $flushEntryCommands(this$static){
  var oldQueue, rescheduled;
  if (this$static.entryCommands) {
    rescheduled = null;
    do {
      oldQueue = this$static.entryCommands;
      this$static.entryCommands = null;
      rescheduled = runScheduledTasks(oldQueue, rescheduled);
    }
     while (this$static.entryCommands);
    this$static.entryCommands = rescheduled;
  }
}

function $flushFinallyCommands(this$static){
  var oldQueue, rescheduled;
  if (this$static.finallyCommands) {
    rescheduled = null;
    do {
      oldQueue = this$static.finallyCommands;
      this$static.finallyCommands = null;
      rescheduled = runScheduledTasks(oldQueue, rescheduled);
    }
     while (this$static.finallyCommands);
    this$static.finallyCommands = rescheduled;
  }
}

function $scheduleFinally(this$static, cmd){
  this$static.finallyCommands = push(this$static.finallyCommands, [cmd, false]);
}

function SchedulerImpl_0(){
}

function push(queue, task){
  !queue && (queue = []);
  queue[queue.length] = task;
  return queue;
}

function runScheduledTasks(tasks, rescheduled){
  var $e0, i, j, t;
  for (i = 0 , j = tasks.length; i < j; ++i) {
    t = tasks[i];
    try {
      t[1]?t[0].execute() && (rescheduled = push(rescheduled, t)):t[0].execute_0();
    }
     catch ($e0) {
      $e0 = caught_0($e0);
      if (!instanceOf($e0, Q$Throwable))
        throw $e0;
    }
  }
  return rescheduled;
}

defineSeed(166, 154, {}, SchedulerImpl_0);
_.deferredCommands = null;
_.entryCommands = null;
_.finallyCommands = null;
_.flushRunning = false;
_.flusher = null;
_.incrementalCommands = null;
_.rescue = null;
_.shouldBeRunning = false;
var INSTANCE_0;
function extractNameFromToString(fnToString){
  var index, start, toReturn;
  toReturn = '';
  fnToString = $trim(fnToString);
  index = fnToString.indexOf('(');
  start = fnToString.indexOf('function') == 0?8:0;
  if (index == -1) {
    index = $indexOf_0(fnToString, fromCodePoint(64));
    start = fnToString.indexOf('function ') == 0?9:0;
  }
  index != -1 && (toReturn = $trim(fnToString.substr(start, index - start)));
  return toReturn.length > 0?toReturn:'anonymous';
}

function $collect(this$static){
  var seen = {};
  var toReturn = [];
  var callee = arguments.callee.caller.caller;
  while (callee) {
    var name_0 = this$static.extractName(callee.toString());
    toReturn.push(name_0);
    var keyName = ':' + name_0;
    var withThisName = seen[keyName];
    if (withThisName) {
      var i, j;
      for (i = 0 , j = withThisName.length; i < j; i++) {
        if (withThisName[i] === callee) {
          return toReturn;
        }
      }
    }
    (withThisName || (seen[keyName] = [])).push(callee);
    callee = callee.caller;
  }
  return toReturn;
}

function $createStackTrace(e){
  var i, j, stack, stackTrace;
  stack = (instanceOfJso(e.e)?dynamicCastJso(e.e):null , []);
  stackTrace = initDim(_3Ljava_lang_StackTraceElement_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$StackTraceElement, stack.length, 0);
  for (i = 0 , j = stackTrace.length; i < j; ++i) {
    stackTrace[i] = new StackTraceElement_0(stack[i]);
  }
  $setStackTrace(stackTrace);
}

function $fillInStackTrace(){
  var i, j, stack, stackTrace;
  stack = $collect(new StackTraceCreator$Collector_0);
  stackTrace = initDim(_3Ljava_lang_StackTraceElement_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$StackTraceElement, stack.length, 0);
  for (i = 0 , j = stackTrace.length; i < j; ++i) {
    stackTrace[i] = new StackTraceElement_0(stack[i]);
  }
  $setStackTrace(stackTrace);
}

function $getProperties(e){
  var result = '';
  try {
    for (var prop in e) {
      if (prop != 'name' && prop != 'message' && prop != 'toString') {
        try {
          result += '\n ' + prop + ': ' + e[prop];
        }
         catch (ignored) {
        }
      }
    }
  }
   catch (ignored) {
  }
  return result;
}

function StackTraceCreator$Collector_0(){
}

defineSeed(171, 1, {}, StackTraceCreator$Collector_0);
_.extractName = function extractName(fnToString){
  return extractNameFromToString(fnToString);
}
;
function $append_0(a, x){
  a[a.explicitLength++] = x == null?'null':x;
}

function $appendNonNull(a, x){
  a[a.explicitLength++] = x;
}

function $createData(){
  var array = [];
  array.explicitLength = 0;
  return array;
}

function $takeString(a){
  var s = a.join('');
  a.length = a.explicitLength = 0;
  return s;
}

function $toString(a){
  var s;
  s = $takeString(a);
  $appendNonNull(a, s);
  return s;
}

function setNative(instance, key, value){
  !instance.expando$ && (instance.expando$ = {});
  instance.expando$[':' + key] = value;
}

function XhrLoadingStrategy_0(){
  this.manualRetryNumbers = [];
}

defineSeed(175, 163, {}, XhrLoadingStrategy_0);
function $tryDownload(request){
  var xhr;
  xhr = create_3();
  $open(xhr, 'GET', request.url);
  $setOnReadyStateChange(xhr, new XhrLoadingStrategy$XhrDownloadStrategy$1_0(xhr, request));
  xhr.send(null);
}

function XhrLoadingStrategy$XhrDownloadStrategy$1_0(val$xhr, val$request){
  this.val$xhr = val$xhr;
  this.val$request = val$request;
}

defineSeed(177, 1, {}, XhrLoadingStrategy$XhrDownloadStrategy$1_0);
_.onReadyStateChange = function onReadyStateChange(ignored){
  if (this.val$xhr.readyState == 4) {
    $clearOnReadyStateChange(this.val$xhr);
    (this.val$xhr.status == 200 || this.val$xhr.status == 0) && this.val$xhr.responseText != null && this.val$xhr.responseText.length != 0?$tryInstall(this.val$request, this.val$xhr.responseText):$onLoadError(this.val$request, new AsyncFragmentLoader$HttpDownloadFailure_0(this.val$request.url, this.val$xhr.status, this.val$xhr.statusText), true);
  }
}
;
_.val$request = null;
_.val$xhr = null;
function $appendChild(this$static, newChild){
  return this$static.appendChild(newChild);
}

function $insertBefore(this$static, newChild, refChild){
  return this$static.insertBefore(newChild, refChild);
}

function $removeChild(this$static, oldChild){
  return this$static.removeChild(oldChild);
}

function $replaceChild(this$static, newChild, oldChild){
  return this$static.replaceChild(newChild, oldChild);
}

--></script>
<script><!--
function $addClassName(this$static, className){
  var idx, last, lastPos, oldClassName;
  className = $trim(className);
  oldClassName = this$static.className;
  idx = oldClassName.indexOf(className);
  while (idx != -1) {
    if (idx == 0 || oldClassName.charCodeAt(idx - 1) == 32) {
      last = idx + className.length;
      lastPos = oldClassName.length;
      if (last == lastPos || last < lastPos && oldClassName.charCodeAt(last) == 32) {
        break;
      }
    }
    idx = oldClassName.indexOf(className, idx + 1);
  }
  if (idx == -1) {
    oldClassName.length > 0 && (oldClassName += ' ');
    this$static.className = oldClassName + className;
  }
}

function $getPropertyString(this$static, name_0){
  return this$static[name_0] == null?null:String(this$static[name_0]);
}

function $removeClassName(this$static, className){
  var begin, end, idx, last, lastPos, newClassName, oldStyle;
  className = $trim(className);
  oldStyle = this$static.className;
  idx = oldStyle.indexOf(className);
  while (idx != -1) {
    if (idx == 0 || oldStyle.charCodeAt(idx - 1) == 32) {
      last = idx + className.length;
      lastPos = oldStyle.length;
      if (last == lastPos || last < lastPos && oldStyle.charCodeAt(last) == 32) {
        break;
      }
    }
    idx = oldStyle.indexOf(className, idx + 1);
  }
  if (idx != -1) {
    begin = $trim(oldStyle.substr(0, idx - 0));
    end = $trim($substring(oldStyle, idx + className.length));
    begin.length == 0?(newClassName = end):end.length == 0?(newClassName = begin):(newClassName = begin + ' ' + end);
    this$static.className = newClassName;
  }
}

function $setInnerHTML(this$static, html){
  this$static.innerHTML = html || '';
}

function $setTabIndex(this$static, tabIndex){
  this$static.tabIndex = tabIndex;
}

function $createInputElement(doc, type){
  var e = doc.createElement('INPUT');
  e.type = type;
  return e;
}

function $createScriptElement(doc, source){
  var elem;
  elem = $createElement(doc, 'script');
  elem.text = source;
  return elem;
}

function $getFirstChildElement(elem){
  var child = elem.firstChild;
  while (child && child.nodeType != 1)
    child = child.nextSibling;
  return child;
}

function $getNextSiblingElement(elem){
  var sib = elem.nextSibling;
  while (sib && sib.nodeType != 1)
    sib = sib.nextSibling;
  return sib;
}

function $getParentElement(node){
  var parent_0 = node.parentNode;
  (!parent_0 || parent_0.nodeType != 1) && (parent_0 = null);
  return parent_0;
}

function $createElement(doc, tagName){
  var container, elem;
  if (tagName.indexOf(':') != -1) {
    container = (!doc.__gwt_container && (doc.__gwt_container = doc.createElement('div')) , doc.__gwt_container);
    container.innerHTML = '<' + tagName + '/>' || '';
    elem = $getFirstChildElement(container);
    container.removeChild(elem);
    return elem;
  }
  return doc.createElement(tagName);
}

function $eventPreventDefault(evt){
  evt.returnValue = false;
}

function $setInnerText(elem, text){
  elem.innerText = text || '';
}

function isOrHasChildImpl(parent_0, child){
  if (parent_0.nodeType != 1 && parent_0.nodeType != 9) {
    return parent_0 == child;
  }
  if (child.nodeType != 1) {
    child = child.parentNode;
    if (!child) {
      return false;
    }
  }
  if (parent_0.nodeType == 9) {
    return parent_0 === child || parent_0.body && parent_0.body.contains(child);
  }
   else {
    return parent_0 === child || parent_0.contains(child);
  }
}

var currentEventTarget = null;
function $createUniqueId(this$static){
  !this$static.gwt_uid && (this$static.gwt_uid = 1);
  return 'gwt-uid-' + this$static.gwt_uid++;
}

function $getElementById(this$static, elementId){
  return this$static.getElementById(elementId);
}

function $clinit_Style$TextAlign(){
  $clinit_Style$TextAlign = nullMethod;
  CENTER = new Style$TextAlign$1_0;
  JUSTIFY = new Style$TextAlign$2_0;
  LEFT = new Style$TextAlign$3_0;
  RIGHT = new Style$TextAlign$4_0;
  $VALUES_2 = initValues(_3Lcom_google_gwt_dom_client_Style$TextAlign_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Style$TextAlign, [CENTER, JUSTIFY, LEFT, RIGHT]);
}

function values_3(){
  $clinit_Style$TextAlign();
  return $VALUES_2;
}

defineSeed(201, 116, makeCastMap([Q$Style$HasCssName, Q$Style$TextAlign, Q$Serializable, Q$Comparable, Q$Enum]));
var $VALUES_2, CENTER, JUSTIFY, LEFT, RIGHT;
function Style$TextAlign$1_0(){
  Enum_0.call(this, 'CENTER', 0);
}

defineSeed(202, 201, makeCastMap([Q$Style$HasCssName, Q$Style$TextAlign, Q$Serializable, Q$Comparable, Q$Enum]), Style$TextAlign$1_0);
function Style$TextAlign$2_0(){
  Enum_0.call(this, 'JUSTIFY', 1);
}

defineSeed(203, 201, makeCastMap([Q$Style$HasCssName, Q$Style$TextAlign, Q$Serializable, Q$Comparable, Q$Enum]), Style$TextAlign$2_0);
function Style$TextAlign$3_0(){
  Enum_0.call(this, 'LEFT', 2);
}

defineSeed(204, 201, makeCastMap([Q$Style$HasCssName, Q$Style$TextAlign, Q$Serializable, Q$Comparable, Q$Enum]), Style$TextAlign$3_0);
function Style$TextAlign$4_0(){
  Enum_0.call(this, 'RIGHT', 3);
}

defineSeed(205, 201, makeCastMap([Q$Style$HasCssName, Q$Style$TextAlign, Q$Serializable, Q$Comparable, Q$Enum]), Style$TextAlign$4_0);
function $clinit_StyleInjector(){
  $clinit_StyleInjector = nullMethod;
  toInject = [];
  toInjectAtEnd = [];
  toInjectAtStart = [];
  flusher = new StyleInjector$1_0;
}

function flush(){
  $clinit_StyleInjector();
  var css, maybeReturn, toReturn;
  toReturn = null;
  if (toInjectAtStart.length != 0) {
    css = toInjectAtStart.join('');
    maybeReturn = $injectStyleSheetAtStart(($clinit_StyleInjector$StyleInjectorImpl() , css));
    !toInjectAtStart && (toReturn = maybeReturn);
    toInjectAtStart.length = 0;
  }
  if (toInject.length != 0) {
    css = toInject.join('');
    maybeReturn = $injectStyleSheet(($clinit_StyleInjector$StyleInjectorImpl() , css));
    !toInject && (toReturn = maybeReturn);
    toInject.length = 0;
  }
  if (toInjectAtEnd.length != 0) {
    css = toInjectAtEnd.join('');
    maybeReturn = $injectStyleSheetAtEnd(($clinit_StyleInjector$StyleInjectorImpl() , css));
    !toInjectAtEnd && (toReturn = maybeReturn);
    toInjectAtEnd.length = 0;
  }
  needsInjection = false;
  return toReturn;
}

function inject_0(css){
  $clinit_StyleInjector();
  $push(toInject, css);
  schedule();
}

function schedule(){
  $clinit_StyleInjector();
  if (!needsInjection) {
    needsInjection = true;
    $scheduleFinally(($clinit_SchedulerImpl() , INSTANCE_0), flusher);
  }
}

var flusher, needsInjection = false, toInject, toInjectAtEnd, toInjectAtStart;
function StyleInjector$1_0(){
}

defineSeed(218, 1, {}, StyleInjector$1_0);
_.execute_0 = function execute_2(){
  ($clinit_StyleInjector() , needsInjection) && flush();
}
;
function $clinit_StyleInjector$StyleInjectorImpl(){
  $clinit_StyleInjector$StyleInjectorImpl = nullMethod;
  $clinit_StyleInjector$StyleInjectorImplIE();
}

function $clinit_StyleInjector$StyleInjectorImplIE(){
  $clinit_StyleInjector$StyleInjectorImplIE = nullMethod;
  $clinit_StyleInjector$StyleInjectorImpl();
  styleSheetLengths = initDim(_3I_classLit, makeCastMap([Q$Serializable]), -1, 30, 1);
}

function $appendToStyleSheet(idx, contents, append){
  var style;
  style = $doc.styleSheets[idx];
  append?(style.cssText += contents , undefined):(style.cssText = contents + style.cssText , undefined);
  return style;
}

function $createNewStyleSheet(contents){
  var style;
  style = $doc.createStyleSheet();
  style.cssText = contents;
  return style;
}

function $injectStyleSheet(contents){
  var i, len, numStyles, shortestIdx, shortestLen;
  numStyles = $doc.styleSheets.length;
  if (numStyles < 30) {
    return $createNewStyleSheet(contents);
  }
   else {
    shortestLen = 2147483647;
    shortestIdx = -1;
    for (i = 0; i < numStyles; ++i) {
      len = styleSheetLengths[i];
      len == 0 && (len = styleSheetLengths[i] = $doc.styleSheets[i].cssText.length);
      if (len <= shortestLen) {
        shortestLen = len;
        shortestIdx = i;
      }
    }
    styleSheetLengths[shortestIdx] += contents.length;
    return $appendToStyleSheet(shortestIdx, contents, true);
  }
}

function $injectStyleSheetAtEnd(contents){
  var documentStyleCount;
  documentStyleCount = $doc.styleSheets.length;
  if (documentStyleCount == 0) {
    return $createNewStyleSheet(contents);
  }
  return $appendToStyleSheet(documentStyleCount - 1, contents, true);
}

function $injectStyleSheetAtStart(contents){
  if ($doc.styleSheets.length == 0) {
    return $createNewStyleSheet(contents);
  }
  return $appendToStyleSheet(0, contents, false);
}

var styleSheetLengths;
function $setNativeEvent(this$static, nativeEvent){
  this$static.nativeEvent = nativeEvent;
}

function $setRelativeElement(this$static, relativeElem){
  this$static.relativeElem = relativeElem;
}

function fireNativeEvent(nativeEvent, handlerSource, relativeElem){
  var currentNative, currentRelativeElem, typeKey;
  if (registered) {
    typeKey = dynamicCast($unsafeGet(registered, nativeEvent.type), Q$DomEvent$Type);
    if (typeKey) {
      currentNative = typeKey.flyweight.nativeEvent;
      currentRelativeElem = typeKey.flyweight.relativeElem;
      $setNativeEvent(typeKey.flyweight, nativeEvent);
      $setRelativeElement(typeKey.flyweight, relativeElem);
      $fireEvent(handlerSource, typeKey.flyweight);
      $setNativeEvent(typeKey.flyweight, currentNative);
      $setRelativeElement(typeKey.flyweight, currentRelativeElem);
    }
  }
}

defineSeed(222, 28, {});
_.getAssociatedType = function getAssociatedType_1(){
  return this.getAssociatedType_0();
}
;
_.nativeEvent = null;
_.relativeElem = null;
var registered = null;
defineSeed(225, 222, {});
defineSeed(224, 225, {});
function $clinit_ClickEvent(){
  $clinit_ClickEvent = nullMethod;
  TYPE_2 = new DomEvent$Type_0('click', new ClickEvent_0);
}

function ClickEvent_0(){
}

defineSeed(223, 224, {}, ClickEvent_0);
_.dispatch = function dispatch_2(handler){
  dynamicCast(handler, Q$ClickHandler).onClick(this);
}
;
_.getAssociatedType_0 = function getAssociatedType_3(){
  return TYPE_2;
}
;
var TYPE_2;
defineSeed(228, 1, {});
_.hashCode$ = function hashCode_2(){
  return this.index_0;
}
;
_.toString$ = function toString_5(){
  return 'Event type';
}
;
_.index_0 = 0;
var nextHashCode = 0;
function GwtEvent$Type_0(){
  this.index_0 = ++nextHashCode;
}

defineSeed(227, 228, {}, GwtEvent$Type_0);
function DomEvent$Type_0(eventName, flyweight){
  GwtEvent$Type_0.call(this);
  this.flyweight = flyweight;
  !registered && (registered = new PrivateMap_0);
  $unsafePut(registered, eventName, this);
  this.name_0 = eventName;
}

defineSeed(226, 227, makeCastMap([Q$DomEvent$Type]), DomEvent$Type_0);
_.flyweight = null;
_.name_0 = null;
function $unsafeGet(this$static, key){
  return this$static.map[key];
}

function $unsafePut(this$static, key, value){
  this$static.map[key] = value;
}

function PrivateMap_0(){
  this.map = {};
}

defineSeed(233, 1, {}, PrivateMap_0);
_.map = null;
function CloseEvent_0(){
}

function fire_0(source){
  var event_0;
  if (TYPE_5) {
    event_0 = new CloseEvent_0;
    source.fireEvent_0(event_0);
  }
}

defineSeed(235, 28, {}, CloseEvent_0);
_.dispatch = function dispatch_5(handler){
  dynamicCast(handler, Q$CloseHandler).onClose(this);
}
;
_.getAssociatedType = function getAssociatedType_6(){
  return TYPE_5;
}
;
var TYPE_5 = null;
function ValueChangeEvent_0(value){
  this.value_0 = value;
}

function fire_3(source, value){
  var event_0;
  if (TYPE_8) {
    event_0 = new ValueChangeEvent_0(value);
    $fireEvent_0(source.handlers, event_0);
  }
}

defineSeed(239, 28, {}, ValueChangeEvent_0);
_.dispatch = function dispatch_8(handler){
  dynamicCast(handler, Q$ValueChangeHandler).onValueChange(this);
}
;
_.getAssociatedType = function getAssociatedType_9(){
  return TYPE_8;
}
;
_.getValue = function getValue(){
  return this.value_0;
}
;
_.value_0 = null;
var TYPE_8 = null;
function $addHandler_0(this$static, type, handler){
  return new LegacyHandlerWrapper_0($doAdd(this$static.eventBus, type, handler));
}

function $fireEvent_0(this$static, event_0){
  var $e0, e, oldSource;
  !event_0.dead || event_0.revive();
  oldSource = event_0.source;
  $setSource(event_0, this$static.source);
  try {
    $doFire(this$static.eventBus, event_0);
  }
   catch ($e0) {
    $e0 = caught_0($e0);
    if (instanceOf($e0, Q$UmbrellaException)) {
      e = $e0;
      throw new UmbrellaException_2(e.causes);
    }
     else 
      throw $e0;
  }
   finally {
    oldSource == null?(event_0.dead = true , event_0.source = null , undefined):(event_0.source = oldSource , undefined);
  }
}

function $isEventHandled(this$static, e){
  return $isEventHandled_0(this$static.eventBus, e);
}

function HandlerManager_0(source){
  HandlerManager_1.call(this, source, false);
}

function HandlerManager_1(source, fireInReverseOrder){
  this.eventBus = new HandlerManager$Bus_0(fireInReverseOrder);
  this.source = source;
}

defineSeed(240, 1, makeCastMap([Q$HasHandlers]), HandlerManager_0, HandlerManager_1);
_.fireEvent_0 = function fireEvent_0(event_0){
  $fireEvent_0(this, event_0);
}
;
_.eventBus = null;
_.source = null;
defineSeed(243, 1, {});
function $defer(this$static, command){
  !this$static.deferredDeltas && (this$static.deferredDeltas = new ArrayList_0);
  $add_7(this$static.deferredDeltas, command);
}

function $doAdd(this$static, type, handler){
  if (!type) {
    throw new NullPointerException_1('Cannot add a handler with a null type');
  }
  if (!handler) {
    throw new NullPointerException_1('Cannot add a null handler');
  }
  this$static.firingDepth > 0?$defer(this$static, new SimpleEventBus$2_0(this$static, type, handler)):$doAddNow(this$static, type, null, handler);
  return new SimpleEventBus$1_0(this$static, type, handler);
}

function $doAddNow(this$static, type, source, handler){
  var l_0;
  l_0 = $ensureHandlerList(this$static, type, source);
  l_0.add_0(handler);
}

function $doFire(this$static, event_0){
  var $e0, causes, e, handler, handlers, it;
  if (!event_0) {
    throw new NullPointerException_1('Cannot fire null event');
  }
  try {
    ++this$static.firingDepth;
    handlers = $getDispatchList(this$static, event_0.getAssociatedType());
    causes = null;
    it = this$static.isReverseOrder?handlers.listIterator_0(handlers.size_1()):handlers.listIterator();
    while (this$static.isReverseOrder?it.i > 0:it.i < it.this$0_0.size_1()) {
      handler = this$static.isReverseOrder?$previous(it):$next_3(it);
      try {
        event_0.dispatch(dynamicCast(handler, Q$EventHandler));
      }
       catch ($e0) {
        $e0 = caught_0($e0);
        if (instanceOf($e0, Q$Throwable)) {
          e = $e0;
          !causes && (causes = new HashSet_0);
          $add_8(causes, e);
        }
         else 
          throw $e0;
      }
    }
    if (causes) {
      throw new UmbrellaException_1(causes);
    }
  }
   finally {
    --this$static.firingDepth;
    this$static.firingDepth == 0 && $handleQueuedAddsAndRemoves(this$static);
  }
}

function $ensureHandlerList(this$static, type, source){
  var handlers, sourceMap;
  sourceMap = dynamicCast($get_2(this$static.map, type), Q$Map);
  if (!sourceMap) {
    sourceMap = new HashMap_0;
    $put_0(this$static.map, type, sourceMap);
  }
  handlers = dynamicCast(sourceMap.get(source), Q$List);
  if (!handlers) {
    handlers = new ArrayList_0;
    sourceMap.put(source, handlers);
  }
  return handlers;
}

function $getDispatchList(this$static, type){
  var directHandlers;
  directHandlers = $getHandlerList(this$static, type, null);
  return directHandlers;
}

function $getHandlerList(this$static, type, source){
  var handlers, sourceMap;
  sourceMap = dynamicCast($get_2(this$static.map, type), Q$Map);
  if (!sourceMap) {
    return $clinit_Collections() , $clinit_Collections() , EMPTY_LIST;
  }
  handlers = dynamicCast(sourceMap.get(source), Q$List);
  if (!handlers) {
    return $clinit_Collections() , $clinit_Collections() , EMPTY_LIST;
  }
  return handlers;
}

function $handleQueuedAddsAndRemoves(this$static){
  var c, c$iterator;
  if (this$static.deferredDeltas) {
    try {
      for (c$iterator = new AbstractList$IteratorImpl_0(this$static.deferredDeltas); c$iterator.i < c$iterator.this$0_0.size_1();) {
        c = dynamicCast($next_3(c$iterator), Q$SimpleEventBus$Command);
        c.execute_0();
      }
    }
     finally {
      this$static.deferredDeltas = null;
    }
  }
}

function $isEventHandled_0(this$static, eventKey){
  return $containsKey(this$static.map, eventKey);
}

defineSeed(242, 243, {});
_.deferredDeltas = null;
_.firingDepth = 0;
_.isReverseOrder = false;
function HandlerManager$Bus_0(fireInReverseOrder){
  this.map = new HashMap_0;
  this.isReverseOrder = fireInReverseOrder;
}

defineSeed(241, 242, {}, HandlerManager$Bus_0);
function LegacyHandlerWrapper_0(real){
  this.real = real;
}

defineSeed(244, 1, {}, LegacyHandlerWrapper_0);
_.real = null;
function UmbrellaException_1(causes){
  RuntimeException_1.call(this, makeMessage(causes), makeCause(causes));
  this.causes = causes;
}

function makeCause(causes){
  var iterator;
  iterator = causes.iterator();
  if (!iterator.hasNext()) {
    return null;
  }
  return dynamicCast(iterator.next_0(), Q$Throwable);
}

function makeMessage(causes){
  var b, count, first, t, t$iterator;
  count = causes.size_1();
  if (count == 0) {
    return null;
  }
  b = new StringBuilder_1(count == 1?'Exception caught: ':count + ' exceptions caught: ');
  first = true;
  for (t$iterator = causes.iterator(); t$iterator.hasNext();) {
    t = dynamicCast(t$iterator.next_0(), Q$Throwable);
    first?(first = false):($append_0(b.data, '; ') , b);
    $append_4(b, t.getMessage());
  }
  return $toString(b.data);
}

defineSeed(246, 147, makeCastMap([Q$UmbrellaException, Q$Serializable, Q$RuntimeException, Q$Throwable]), UmbrellaException_1);
_.causes = null;
function UmbrellaException_2(causes){
  UmbrellaException_1.call(this, causes);
}

defineSeed(245, 246, makeCastMap([Q$UmbrellaException, Q$Serializable, Q$RuntimeException, Q$Throwable]), UmbrellaException_2);
function $cancel_2(this$static){
  var xmlHttp;
  if (this$static.xmlHttpRequest) {
    xmlHttp = this$static.xmlHttpRequest;
    this$static.xmlHttpRequest = null;
    $clearOnReadyStateChange(xmlHttp);
    xmlHttp.abort();
    !!this$static.timer && $cancel_0(this$static.timer);
  }
}

function $fireOnResponseReceived(this$static, callback){
  var errorMsg, exception, response, xhr;
  if (!this$static.xmlHttpRequest) {
    return;
  }
  !!this$static.timer && $cancel_0(this$static.timer);
  xhr = this$static.xmlHttpRequest;
  this$static.xmlHttpRequest = null;
  errorMsg = $getBrowserSpecificFailure(xhr);
  if (errorMsg != null) {
    exception = new RuntimeException_0(errorMsg);
    callback.callback.onFailure(exception);
  }
   else {
    response = new Request$1_0(xhr);
    $onResponseReceived(callback, response);
  }
}

function $fireOnTimeout(this$static, callback){
  if (!this$static.xmlHttpRequest) {
    return;
  }
  $cancel_2(this$static);
  $onError(callback, new RequestTimeoutException_0(this$static.timeoutMillis));
}

function $getBrowserSpecificFailure(xhr){
  try {
    if (xhr.status === undefined) {
      return 'XmlHttpRequest.status == undefined, please see Safari bug http://bugs.webkit.org/show_bug.cgi?id=3810 for more details';
    }
    return null;
  }
   catch (e) {
    return 'Unable to read XmlHttpRequest.status; likely causes are a networking error or bad cross-domain request. Please see https://bugzilla.mozilla.org/show_bug.cgi?id=238559 for more details';
  }
}

function Request_0(xmlHttpRequest, timeoutMillis, callback){
  if (!xmlHttpRequest) {
    throw new NullPointerException_0;
  }
  if (!callback) {
    throw new NullPointerException_0;
  }
  if (timeoutMillis < 0) {
    throw new IllegalArgumentException_0;
  }
  this.timeoutMillis = timeoutMillis;
  this.xmlHttpRequest = xmlHttpRequest;
  if (timeoutMillis > 0) {
    this.timer = new Request$3_0(this, callback);
    $schedule(this.timer, timeoutMillis);
  }
   else {
    this.timer = null;
  }
}

defineSeed(247, 1, {}, Request_0);
_.timeoutMillis = 0;
_.timer = null;
_.xmlHttpRequest = null;
defineSeed(249, 1, {});
function Request$1_0(val$xmlHttpRequest){
  this.val$xmlHttpRequest = val$xmlHttpRequest;
}

defineSeed(248, 249, {}, Request$1_0);
_.val$xmlHttpRequest = null;
function Request$3_0(this$0, val$callback){
  $clinit_Timer();
  this.this$0 = this$0;
  this.val$callback = val$callback;
}

defineSeed(250, 72, makeCastMap([Q$Timer]), Request$3_0);
_.run = function run_0(){
  $fireOnTimeout(this.this$0, this.val$callback);
}
;
_.this$0 = null;
_.val$callback = null;
function $clinit_RequestBuilder(){
  $clinit_RequestBuilder = nullMethod;
  new RequestBuilder$Method_0('DELETE');
  new RequestBuilder$Method_0('GET');
  new RequestBuilder$Method_0('HEAD');
  POST = new RequestBuilder$Method_0('POST');
  new RequestBuilder$Method_0('PUT');
}

function $doSend(this$static, requestData, callback){
  var $e0, e, request, requestPermissionException, xmlHttpRequest;
  xmlHttpRequest = create_3();
  try {
    $open(xmlHttpRequest, this$static.httpMethod, this$static.url);
  }
   catch ($e0) {
    $e0 = caught_0($e0);
    if (instanceOf($e0, Q$JavaScriptException)) {
      e = $e0;
      requestPermissionException = new RequestPermissionException_0(this$static.url);
      $initCause(requestPermissionException, new RequestException_0(e.getMessage()));
      throw requestPermissionException;
    }
     else 
      throw $e0;
  }
  $setHeaders(this$static, xmlHttpRequest);
  request = new Request_0(xmlHttpRequest, this$static.timeoutMillis, callback);
  $setOnReadyStateChange(xmlHttpRequest, new RequestBuilder$1_0(request, callback));
  try {
    xmlHttpRequest.send(requestData);
  }
   catch ($e0) {
    $e0 = caught_0($e0);
    if (instanceOf($e0, Q$JavaScriptException)) {
      e = $e0;
      throw new RequestException_0(e.getMessage());
    }
     else 
      throw $e0;
  }
  return request;
}

function $setHeader_0(this$static, header, value){
  throwIfEmptyOrNull('header', header);
  throwIfEmptyOrNull('value', value);
  !this$static.headers && (this$static.headers = new HashMap_0);
  $put_0(this$static.headers, header, value);
}

function $setHeaders(this$static, xmlHttpRequest){
  var $e0, e, header, header$iterator;
  if (!!this$static.headers && this$static.headers.size_0 > 0) {
    for (header$iterator = new AbstractHashMap$EntrySetIterator_0((new AbstractHashMap$EntrySet_0(this$static.headers)).this$0); $hasNext(header$iterator.iter);) {
      header = header$iterator.last = dynamicCast($next_3(header$iterator.iter), Q$Map$Entry);
      try {
        $setRequestHeader(xmlHttpRequest, dynamicCast(header.getKey(), Q$String), dynamicCast(header.getValue(), Q$String));
      }
       catch ($e0) {
        $e0 = caught_0($e0);
        if (instanceOf($e0, Q$JavaScriptException)) {
          e = $e0;
          throw new RequestException_0(e.getMessage());
        }
         else 
          throw $e0;
      }
    }
  }
   else {
    xmlHttpRequest.setRequestHeader('Content-Type', 'text/plain; charset=utf-8');
  }
}

function RequestBuilder_0(httpMethod, url){
  $clinit_RequestBuilder();
  RequestBuilder_1.call(this, !httpMethod?null:httpMethod.name_0, url);
}

function RequestBuilder_1(httpMethod, url){
  throwIfEmptyOrNull('httpMethod', httpMethod);
  throwIfEmptyOrNull('url', url);
  this.httpMethod = httpMethod;
  this.url = url;
}

defineSeed(251, 1, {}, RequestBuilder_0);
_.callback = null;
_.headers = null;
_.httpMethod = null;
_.requestData = null;
_.timeoutMillis = 0;
_.url = null;
var POST;
function RequestBuilder$1_0(val$request, val$callback){
  this.val$request = val$request;
  this.val$callback = val$callback;
}

defineSeed(252, 1, {}, RequestBuilder$1_0);
_.onReadyStateChange = function onReadyStateChange_0(xhr){
  if (xhr.readyState == 4) {
    $clearOnReadyStateChange(xhr);
    $fireOnResponseReceived(this.val$request, this.val$callback);
  }
}
;
_.val$callback = null;
_.val$request = null;
function RequestBuilder$Method_0(name_0){
  this.name_0 = name_0;
}

defineSeed(253, 1, {}, RequestBuilder$Method_0);
_.toString$ = function toString_6(){
  return this.name_0;
}
;
_.name_0 = null;
function RequestException_0(message){
  Exception_0.call(this, message);
}

defineSeed(254, 148, makeCastMap([Q$RequestException, Q$Serializable, Q$Throwable]), RequestException_0);
function RequestPermissionException_0(url){
  $fillInStackTrace();
  this.detailMessage = 'The URL ' + url + ' is invalid or violates the same-origin security restriction';
}

defineSeed(255, 254, makeCastMap([Q$RequestException, Q$Serializable, Q$Throwable]), RequestPermissionException_0);
function RequestTimeoutException_0(timeoutMillis){
  $fillInStackTrace();
  this.detailMessage = 'A request timeout has expired after ' + timeoutMillis + ' ms';
}

defineSeed(256, 254, makeCastMap([Q$RequestException, Q$Serializable, Q$Throwable]), RequestTimeoutException_0);
function throwIfEmptyOrNull(name_0, value){
  throwIfNull(name_0, value);
  if (0 == $trim(value).length) {
    throw new IllegalArgumentException_1(name_0 + ' cannot be empty');
  }
}

function throwIfNull(name_0, value){
  if (null == value) {
    throw new NullPointerException_1(name_0 + ' cannot be null');
  }
}

function AutoDirectionHandler_0(){
}

function addTo(){
  var autoDirHandler;
  autoDirHandler = new AutoDirectionHandler_0;
  return autoDirHandler;
}

defineSeed(258, 1, makeCastMap([Q$EventHandler]), AutoDirectionHandler_0);
function getDirectionOnElement(elem){
  var dirPropertyValue;
  dirPropertyValue = $getPropertyString(elem, 'dir');
  if ($equalsIgnoreCase('rtl', dirPropertyValue)) {
    return $clinit_HasDirection$Direction() , RTL;
  }
   else if ($equalsIgnoreCase('ltr', dirPropertyValue)) {
    return $clinit_HasDirection$Direction() , LTR;
  }
  return $clinit_HasDirection$Direction() , DEFAULT;
}

function setDirectionOnElement(elem, direction){
  switch (direction.ordinal) {
    case 0:
      {
        elem['dir'] = 'rtl';
        break;
      }

    case 1:
      {
        elem['dir'] = 'ltr';
        break;
      }

    case 2:
      {
        getDirectionOnElement(elem) != ($clinit_HasDirection$Direction() , DEFAULT) && (elem['dir'] = '' , undefined);
        break;
      }

  }
}

function $clinit_HasDirection$Direction(){
  $clinit_HasDirection$Direction = nullMethod;
  RTL = new HasDirection$Direction_0('RTL', 0);
  LTR = new HasDirection$Direction_0('LTR', 1);
  DEFAULT = new HasDirection$Direction_0('DEFAULT', 2);
  $VALUES_5 = initValues(_3Lcom_google_gwt_i18n_client_HasDirection$Direction_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$HasDirection$Direction, [RTL, LTR, DEFAULT]);
}

function HasDirection$Direction_0(enum$name, enum$ordinal){
  Enum_0.call(this, enum$name, enum$ordinal);
}

function values_6(){
  $clinit_HasDirection$Direction();
  return $VALUES_5;
}

defineSeed(265, 116, makeCastMap([Q$HasDirection$Direction, Q$Serializable, Q$Comparable, Q$Enum]), HasDirection$Direction_0);
var $VALUES_5, DEFAULT, LTR, RTL;
function $clinit_LocaleInfo(){
  $clinit_LocaleInfo = nullMethod;
  instance_0 = new LocaleInfo_0;
}

function LocaleInfo_0(){
}

defineSeed(266, 1, {}, LocaleInfo_0);
_.dateTimeFormatInfo = null;
var instance_0;
function Array_0(){
}

function createFromSeed(seedType, length_0){
  var array = new Array(length_0);
  if (seedType == 3) {
    for (var i = 0; i < length_0; ++i) {
      var value = new Object;
      value.l = value.m = value.h = 0;
      array[i] = value;
    }
  }
   else if (seedType > 0) {
    var value = [null, 0, false][seedType];
    for (var i = 0; i < length_0; ++i) {
      array[i] = value;
    }
  }
  return array;
}

function initDim(arrayClass, castableTypeMap, queryId, length_0, seedType){
  var result;
  result = createFromSeed(seedType, length_0);
  initValues(arrayClass, castableTypeMap, queryId, result);
  return result;
}

function initValues(arrayClass, castableTypeMap, queryId, array){
  $clinit_Array$ExpandoWrapper();
  wrapArray(array, expandoNames_0, expandoValues_0);
  array.___clazz$ = arrayClass;
  array.castableTypeMap$ = castableTypeMap;
  array.queryId$ = queryId;
  return array;
}

function setCheck(array, index, value){
  if (value != null) {
    if (array.queryId$ > 0 && !canCastUnsafe(value, array.queryId$)) {
      throw new ArrayStoreException_0;
    }
     else if (array.queryId$ == -1 && (value.typeMarker$ == nullMethod || canCast(value, 1))) {
      throw new ArrayStoreException_0;
    }
     else if (array.queryId$ < -1 && !(value.typeMarker$ != nullMethod && !canCast(value, 1)) && !canCastUnsafe(value, -array.queryId$)) {
      throw new ArrayStoreException_0;
    }
  }
  return array[index] = value;
}

defineSeed(273, 1, {}, Array_0);
_.queryId$ = 0;
function $clinit_Array$ExpandoWrapper(){
  $clinit_Array$ExpandoWrapper = nullMethod;
  expandoNames_0 = [];
  expandoValues_0 = [];
  initExpandos(new Array_0, expandoNames_0, expandoValues_0);
}

function initExpandos(protoType, expandoNames, expandoValues){
  var i = 0, value;
  for (var name_0 in protoType) {
    if (value = protoType[name_0]) {
      expandoNames[i] = name_0;
      expandoValues[i] = value;
      ++i;
    }
  }
}

function wrapArray(array, expandoNames, expandoValues){
  $clinit_Array$ExpandoWrapper();
  for (var i = 0, c = expandoNames.length; i < c; ++i) {
    array[expandoNames[i]] = expandoValues[i];
  }
}

var expandoNames_0, expandoValues_0;
function canCast(src, dstId){
  return src.castableTypeMap$ && !!src.castableTypeMap$[dstId];
}

function canCastUnsafe(src, dstId){
  return src.castableTypeMap$ && src.castableTypeMap$[dstId];
}

function dynamicCast(src, dstId){
  if (src != null && !canCastUnsafe(src, dstId)) {
    throw new ClassCastException_0;
  }
  return src;
}

--></script>
<script><!--
function dynamicCastJso(src){
  if (src != null && (src.typeMarker$ == nullMethod || canCast(src, 1))) {
    throw new ClassCastException_0;
  }
  return src;
}

function instanceOf(src, dstId){
  return src != null && canCast(src, dstId);
}

function instanceOfJso(src){
  return src != null && src.typeMarker$ != nullMethod && !canCast(src, 1);
}

function isJavaObject(src){
  return src.typeMarker$ == nullMethod || canCast(src, 1);
}

function maskUndefined(src){
  return src == null?null:src;
}

function round_int(x){
  return ~~Math.max(Math.min(x, 2147483647), -2147483648);
}

function throwClassCastExceptionUnlessNull(o){
  if (o != null) {
    throw new ClassCastException_0;
  }
  return null;
}

function init(){
  var runtimeValue, rpcService, eventBus, appViewer;
  !!$stats && onModuleStart('com.google.gwt.useragent.client.UserAgentAsserter');
  runtimeValue = $getRuntimeValue();
  $equals('ie6', runtimeValue) || ($wnd.alert('ERROR: Possible problem with your *.gwt.xml module file.\nThe compile time user.agent value (ie6) does not match the runtime user.agent value (' + runtimeValue + '). Expect more errors.\n') , undefined);
  !!$stats && onModuleStart('com.google.gwt.user.client.DocumentModeAsserter');
  $onModuleLoad();
  !!$stats && onModuleStart('com.arsl.client.Paperazi');
  rpcService = new PaperaziService_Proxy_0;
  eventBus = new HandlerManager_0(null);
  appViewer = new AppController_0(rpcService, eventBus, ($clinit_RootPanel() , get(null)));
  $showLoggedOutView(appViewer);
}

function caught_0(e){
  if (instanceOf(e, Q$Throwable)) {
    return e;
  }
  return new JavaScriptException_0(e);
}

function create_1(value){
  var a0, a1, a2;
  a0 = value & 4194303;
  a1 = value >> 22 & 4194303;
  a2 = value < 0?1048575:0;
  return create0(a0, a1, a2);
}

function create_2(a){
  return create0(a.l, a.m, a.h);
}

function create0(l_0, m_0, h_0){
  return _ = new LongLibBase$LongEmul_0 , _.l = l_0 , _.m = m_0 , _.h = h_0 , _;
}

function divMod(a, b, computeRemainder){
  var aIsCopy, aIsMinValue, aIsNegative, bpower, c, negative;
  if (b.l == 0 && b.m == 0 && b.h == 0) {
    throw new ArithmeticException_0;
  }
  if (a.l == 0 && a.m == 0 && a.h == 0) {
    computeRemainder && (remainder = create0(0, 0, 0));
    return create0(0, 0, 0);
  }
  if (b.h == 524288 && b.m == 0 && b.l == 0) {
    return divModByMinValue(a, computeRemainder);
  }
  negative = false;
  if (b.h >> 19 != 0) {
    b = neg(b);
    negative = true;
  }
  bpower = powerOfTwo(b);
  aIsNegative = false;
  aIsMinValue = false;
  aIsCopy = false;
  if (a.h == 524288 && a.m == 0 && a.l == 0) {
    aIsMinValue = true;
    aIsNegative = true;
    if (bpower == -1) {
      a = create_2(($clinit_LongLib$Const() , MAX_VALUE));
      aIsCopy = true;
      negative = !negative;
    }
     else {
      c = shr(a, bpower);
      negative && negate(c);
      computeRemainder && (remainder = create0(0, 0, 0));
      return c;
    }
  }
   else if (a.h >> 19 != 0) {
    aIsNegative = true;
    a = neg(a);
    aIsCopy = true;
    negative = !negative;
  }
  if (bpower != -1) {
    return divModByShift(a, bpower, negative, aIsNegative, computeRemainder);
  }
  if (!gte_0(a, b)) {
    computeRemainder && (aIsNegative?(remainder = neg(a)):(remainder = create0(a.l, a.m, a.h)));
    return create0(0, 0, 0);
  }
  return divModHelper(aIsCopy?a:create0(a.l, a.m, a.h), b, negative, aIsNegative, aIsMinValue, computeRemainder);
}

function divModByMinValue(a, computeRemainder){
  if (a.h == 524288 && a.m == 0 && a.l == 0) {
    computeRemainder && (remainder = create0(0, 0, 0));
    return create_2(($clinit_LongLib$Const() , ONE));
  }
  computeRemainder && (remainder = create0(a.l, a.m, a.h));
  return create0(0, 0, 0);
}

function divModByShift(a, bpower, negative, aIsNegative, computeRemainder){
  var c;
  c = shr(a, bpower);
  negative && negate(c);
  if (computeRemainder) {
    a = maskRight(a, bpower);
    aIsNegative?(remainder = neg(a)):(remainder = create0(a.l, a.m, a.h));
  }
  return c;
}

function divModHelper(a, b, negative, aIsNegative, aIsMinValue, computeRemainder){
  var bshift, gte, quotient, shift, a1, a2, a0;
  shift = numberOfLeadingZeros(b) - numberOfLeadingZeros(a);
  bshift = shl(b, shift);
  quotient = create0(0, 0, 0);
  while (shift >= 0) {
    gte = trialSubtract(a, bshift);
    if (gte) {
      shift < 22?(quotient.l |= 1 << shift , undefined):shift < 44?(quotient.m |= 1 << shift - 22 , undefined):(quotient.h |= 1 << shift - 44 , undefined);
      if (a.l == 0 && a.m == 0 && a.h == 0) {
        break;
      }
    }
    a1 = bshift.m;
    a2 = bshift.h;
    a0 = bshift.l;
    bshift.h = a2 >>> 1;
    bshift.m = a1 >>> 1 | (a2 & 1) << 21;
    bshift.l = a0 >>> 1 | (a1 & 1) << 21;
    --shift;
  }
  negative && negate(quotient);
  if (computeRemainder) {
    if (aIsNegative) {
      remainder = neg(a);
      aIsMinValue && (remainder = sub(remainder, ($clinit_LongLib$Const() , ONE)));
    }
     else {
      remainder = create0(a.l, a.m, a.h);
    }
  }
  return quotient;
}

function maskRight(a, bits){
  var b0, b1, b2;
  if (bits <= 22) {
    b0 = a.l & (1 << bits) - 1;
    b1 = b2 = 0;
  }
   else if (bits <= 44) {
    b0 = a.l;
    b1 = a.m & (1 << bits - 22) - 1;
    b2 = 0;
  }
   else {
    b0 = a.l;
    b1 = a.m;
    b2 = a.h & (1 << bits - 44) - 1;
  }
  return create0(b0, b1, b2);
}

function negate(a){
  var neg0, neg1, neg2;
  neg0 = ~a.l + 1 & 4194303;
  neg1 = ~a.m + (neg0 == 0?1:0) & 4194303;
  neg2 = ~a.h + (neg0 == 0 && neg1 == 0?1:0) & 1048575;
  a.l = neg0;
  a.m = neg1;
  a.h = neg2;
}

function numberOfLeadingZeros(a){
  var b1, b2;
  b2 = numberOfLeadingZeros_0(a.h);
  if (b2 == 32) {
    b1 = numberOfLeadingZeros_0(a.m);
    return b1 == 32?numberOfLeadingZeros_0(a.l) + 32:b1 + 20 - 10;
  }
   else {
    return b2 - 12;
  }
}

function powerOfTwo(a){
  var h_0, l_0, m_0;
  l_0 = a.l;
  if ((l_0 & l_0 - 1) != 0) {
    return -1;
  }
  m_0 = a.m;
  if ((m_0 & m_0 - 1) != 0) {
    return -1;
  }
  h_0 = a.h;
  if ((h_0 & h_0 - 1) != 0) {
    return -1;
  }
  if (h_0 == 0 && m_0 == 0 && l_0 == 0) {
    return -1;
  }
  if (h_0 == 0 && m_0 == 0 && l_0 != 0) {
    return numberOfTrailingZeros(l_0);
  }
  if (h_0 == 0 && m_0 != 0 && l_0 == 0) {
    return numberOfTrailingZeros(m_0) + 22;
  }
  if (h_0 != 0 && m_0 == 0 && l_0 == 0) {
    return numberOfTrailingZeros(h_0) + 44;
  }
  return -1;
}

function trialSubtract(a, b){
  var sum0, sum1, sum2;
  sum2 = a.h - b.h;
  if (sum2 < 0) {
    return false;
  }
  sum0 = a.l - b.l;
  sum1 = a.m - b.m + (sum0 >> 22);
  sum2 += sum1 >> 22;
  if (sum2 < 0) {
    return false;
  }
  a.l = sum0 & 4194303;
  a.m = sum1 & 4194303;
  a.h = sum2 & 1048575;
  return true;
}

var remainder = null;
function and(a, b){
  return create0(a.l & b.l, a.m & b.m, a.h & b.h);
}

function base64Append(sb, digit, haveNonZero){
  var c;
  digit > 0 && (haveNonZero = true);
  if (haveNonZero) {
    digit < 26?(c = 65 + digit):digit < 52?(c = 97 + digit - 26):digit < 62?(c = 48 + digit - 52):digit == 62?(c = 36):(c = 95);
    $appendNonNull(sb.data, String.fromCharCode(c & 65535));
  }
  return haveNonZero;
}

function base64Value(digit){
  if (digit >= 65 && digit <= 90) {
    return digit - 65;
  }
  if (digit >= 97) {
    return digit - 97 + 26;
  }
  if (digit >= 48 && digit <= 57) {
    return digit - 48 + 52;
  }
  if (digit == 36) {
    return 62;
  }
  return 63;
}

function eq(a, b){
  return a.l == b.l && a.m == b.m && a.h == b.h;
}

function fromInt(value){
  var rebase, result;
  if (value > -129 && value < 128) {
    rebase = value + 128;
    boxedValues == null && (boxedValues = initDim(_3Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$LongLibBase$LongEmul, 256, 0));
    result = boxedValues[rebase];
    !result && (result = boxedValues[rebase] = create_1(value));
    return result;
  }
  return create_1(value);
}

function gt(a, b){
  var signa, signb;
  signa = a.h >> 19;
  signb = b.h >> 19;
  return signa == 0?signb != 0 || a.h > b.h || a.h == b.h && a.m > b.m || a.h == b.h && a.m == b.m && a.l > b.l:!(signb == 0 || a.h < b.h || a.h == b.h && a.m < b.m || a.h == b.h && a.m == b.m && a.l <= b.l);
}

function gte_0(a, b){
  var signa, signb;
  signa = a.h >> 19;
  signb = b.h >> 19;
  return signa == 0?signb != 0 || a.h > b.h || a.h == b.h && a.m > b.m || a.h == b.h && a.m == b.m && a.l >= b.l:!(signb == 0 || a.h < b.h || a.h == b.h && a.m < b.m || a.h == b.h && a.m == b.m && a.l < b.l);
}

function longFromBase64(value){
  var len, longVal, pos;
  pos = 0;
  longVal = fromInt(base64Value($charAt(value, pos++)));
  len = value.length;
  while (pos < len) {
    longVal = shl(longVal, 6);
    longVal = or(longVal, fromInt(base64Value($charAt(value, pos++))));
  }
  return longVal;
}

function lt(a, b){
  return !gte_0(a, b);
}

function neg(a){
  var neg0, neg1, neg2;
  neg0 = ~a.l + 1 & 4194303;
  neg1 = ~a.m + (neg0 == 0?1:0) & 4194303;
  neg2 = ~a.h + (neg0 == 0 && neg1 == 0?1:0) & 1048575;
  return create0(neg0, neg1, neg2);
}

function or(a, b){
  return create0(a.l | b.l, a.m | b.m, a.h | b.h);
}

function shl(a, n){
  var res0, res1, res2;
  n &= 63;
  if (n < 22) {
    res0 = a.l << n;
    res1 = a.m << n | a.l >> 22 - n;
    res2 = a.h << n | a.m >> 22 - n;
  }
   else if (n < 44) {
    res0 = 0;
    res1 = a.l << n - 22;
    res2 = a.m << n - 22 | a.l >> 44 - n;
  }
   else {
    res0 = 0;
    res1 = 0;
    res2 = a.l << n - 44;
  }
  return create0(res0 & 4194303, res1 & 4194303, res2 & 1048575);
}

function shr(a, n){
  var a2, negative, res0, res1, res2;
  n &= 63;
  a2 = a.h;
  negative = (a2 & 524288) != 0;
  negative && (a2 |= -1048576);
  if (n < 22) {
    res2 = a2 >> n;
    res1 = a.m >> n | a2 << 22 - n;
    res0 = a.l >> n | a.m << 22 - n;
  }
   else if (n < 44) {
    res2 = negative?1048575:0;
    res1 = a2 >> n - 22;
    res0 = a.m >> n - 22 | a2 << 44 - n;
  }
   else {
    res2 = negative?1048575:0;
    res1 = negative?4194303:0;
    res0 = a2 >> n - 44;
  }
  return create0(res0 & 4194303, res1 & 4194303, res2 & 1048575);
}

function sub(a, b){
  var sum0, sum1, sum2;
  sum0 = a.l - b.l;
  sum1 = a.m - b.m + (sum0 >> 22);
  sum2 = a.h - b.h + (sum1 >> 22);
  return create0(sum0 & 4194303, sum1 & 4194303, sum2 & 1048575);
}

function toBase64(value){
  var haveNonZero, high, low, sb, v;
  low = toInt(and(value, N1_longLit));
  high = toInt(shr(value, 32));
  sb = new StringBuilder_0;
  haveNonZero = base64Append(sb, high >> 28 & 15, false);
  haveNonZero = base64Append(sb, high >> 22 & 63, haveNonZero);
  haveNonZero = base64Append(sb, high >> 16 & 63, haveNonZero);
  haveNonZero = base64Append(sb, high >> 10 & 63, haveNonZero);
  haveNonZero = base64Append(sb, high >> 4 & 63, haveNonZero);
  v = (high & 15) << 2 | low >> 30 & 3;
  haveNonZero = base64Append(sb, v, haveNonZero);
  haveNonZero = base64Append(sb, low >> 24 & 63, haveNonZero);
  haveNonZero = base64Append(sb, low >> 18 & 63, haveNonZero);
  haveNonZero = base64Append(sb, low >> 12 & 63, haveNonZero);
  base64Append(sb, low >> 6 & 63, haveNonZero);
  base64Append(sb, low & 63, true);
  return $toString(sb.data);
}

function toInt(a){
  return a.l | a.m << 22;
}

function toString_8(a){
  var digits, rem, res, tenPowerLong, zeroesNeeded;
  if (a.l == 0 && a.m == 0 && a.h == 0) {
    return '0';
  }
  if (a.h == 524288 && a.m == 0 && a.l == 0) {
    return '-9223372036854775808';
  }
  if (a.h >> 19 != 0) {
    return '-' + toString_8(neg(a));
  }
  rem = a;
  res = '';
  while (!(rem.l == 0 && rem.m == 0 && rem.h == 0)) {
    tenPowerLong = fromInt(1000000000);
    rem = divMod(rem, tenPowerLong, true);
    digits = '' + toInt(remainder);
    if (!(rem.l == 0 && rem.m == 0 && rem.h == 0)) {
      zeroesNeeded = 9 - digits.length;
      for (; zeroesNeeded > 0; --zeroesNeeded) {
        digits = '0' + digits;
      }
    }
    res = digits + res;
  }
  return res;
}

var boxedValues = null;
function $clinit_LongLib$Const(){
  $clinit_LongLib$Const = nullMethod;
  MAX_VALUE = create0(4194303, 4194303, 524287);
  MIN_VALUE = create0(0, 0, 524288);
  ONE = fromInt(1);
  fromInt(2);
  ZERO = fromInt(0);
}

var MAX_VALUE, MIN_VALUE, ONE, ZERO;
function LongLibBase$LongEmul_0(){
}

defineSeed(282, 1, makeCastMap([Q$LongLibBase$LongEmul]), LongLibBase$LongEmul_0);
function onModuleStart(mainClassName){
  return $stats({moduleName:$moduleName, sessionId:$sessionId, subSystem:'startup', evtGroup:'moduleStartup', millis:(new Date).getTime(), type:'onModuleLoadStart', className:mainClassName});
}

function $replace_0(this$static, input, replacement){
  return input.replace(this$static, replacement);
}

function OnlyToBeUsedInGeneratedCodeStringBlessedAsSafeHtml_0(html){
  if (html == null) {
    throw new NullPointerException_1('html is null');
  }
  this.html = html;
}

defineSeed(287, 1, makeCastMap([Q$SafeHtml, Q$Serializable]), OnlyToBeUsedInGeneratedCodeStringBlessedAsSafeHtml_0);
_.asString = function asString(){
  return this.html;
}
;
_.equals$ = function equals_2(obj){
  if (!instanceOf(obj, Q$SafeHtml)) {
    return false;
  }
  return $equals(this.html, dynamicCast(obj, Q$SafeHtml).asString());
}
;
_.hashCode$ = function hashCode_4(){
  return getHashCode_0(this.html);
}
;
_.html = null;
function SafeHtmlString_0(){
  this.html = '';
}

defineSeed(288, 1, makeCastMap([Q$SafeHtml, Q$Serializable]), SafeHtmlString_0);
_.asString = function asString_0(){
  return this.html;
}
;
_.equals$ = function equals_3(obj){
  if (!instanceOf(obj, Q$SafeHtml)) {
    return false;
  }
  return $equals(this.html, dynamicCast(obj, Q$SafeHtml).asString());
}
;
_.hashCode$ = function hashCode_5(){
  return getHashCode_0(this.html);
}
;
_.html = null;
function $clinit_SafeHtmlUtils(){
  $clinit_SafeHtmlUtils = nullMethod;
  new SafeHtmlString_0;
  AMP_RE = new RegExp('&', 'g');
  GT_RE = new RegExp('>', 'g');
  LT_RE = new RegExp('<', 'g');
  SQUOT_RE = new RegExp("'", 'g');
  QUOT_RE = new RegExp('"', 'g');
}

function htmlEscape(s){
  $clinit_SafeHtmlUtils();
  s.indexOf('&') != -1 && (s = $replace_0(AMP_RE, s, '&amp;'));
  s.indexOf('<') != -1 && (s = $replace_0(LT_RE, s, '&lt;'));
  s.indexOf('>') != -1 && (s = $replace_0(GT_RE, s, '&gt;'));
  s.indexOf('"') != -1 && (s = $replace_0(QUOT_RE, s, '&quot;'));
  s.indexOf("'") != -1 && (s = $replace_0(SQUOT_RE, s, '&#39;'));
  return s;
}

var AMP_RE, GT_RE, LT_RE, QUOT_RE, SQUOT_RE;
defineSeed(292, 1, {});
function PassthroughParser_0(){
}

defineSeed(293, 1, {}, PassthroughParser_0);
var INSTANCE_1 = null;
function PassthroughRenderer_0(){
}

defineSeed(294, 292, {}, PassthroughRenderer_0);
var INSTANCE_2 = null;
function $get_0(this$static){
  if (!this$static.element) {
    this$static.element = $getElementById($doc, this$static.domId);
    if (!this$static.element) {
      throw new RuntimeException_0('Cannot find element with id "' + this$static.domId + '". Perhaps it is not attached to the document body.');
    }
    this$static.element.removeAttribute('id');
  }
  return this$static.element;
}

function LazyDomElement_0(domId){
  this.domId = domId;
}

defineSeed(295, 1, {}, LazyDomElement_0);
_.domId = null;
_.element = null;
function attachToDom(element){
  var origParent, origSibling;
  ensureHiddenDiv();
  origParent = $getParentElement(element);
  origSibling = $getNextSiblingElement(element);
  $appendChild(hiddenDiv, element);
  return new UiBinderUtil$TempAttachment_0(origParent, origSibling, element);
}

function ensureHiddenDiv(){
  if (!hiddenDiv) {
    hiddenDiv = $createElement($doc, 'div');
    setVisible(hiddenDiv, false);
    $appendChild(getBodyElement(), hiddenDiv);
  }
}

function orphan(node){
  $removeChild(node.parentNode, node);
}

var hiddenDiv = null;
function UiBinderUtil$TempAttachment_0(origParent, origSibling, element){
  this.origParent = origParent;
  this.origSibling = origSibling;
  this.element = element;
}

defineSeed(297, 1, {}, UiBinderUtil$TempAttachment_0);
_.element = null;
_.origParent = null;
_.origSibling = null;
function appendChild(parent_0, child){
  $appendChild(parent_0, ($clinit_PotentialElement() , $resolve(child)));
}

function dispatchEvent_1(evt, elem, listener){
  var prevCurrentEvent;
  prevCurrentEvent = currentEvent;
  currentEvent = evt;
  elem == sCaptureElem && $eventGetTypeInt(evt.type) == 8192 && (sCaptureElem = null);
  listener.onBrowserEvent(evt);
  currentEvent = prevCurrentEvent;
}

function previewEvent(evt){
  var ret;
  ret = fire_4(handlers_0, evt);
  if (!ret && !!evt) {
    evt.cancelBubble = true;
    $eventPreventDefault(evt);
  }
  return ret;
}

function setStyleAttribute(elem, attr, value){
  elem.style[attr] = value;
}

var currentEvent = null, sCaptureElem = null;
function $onModuleLoad(){
  var allowedModes, currentMode, i;
  currentMode = $doc.compatMode;
  allowedModes = initValues(_3Ljava_lang_String_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$String, ['CSS1Compat']);
  for (i = 0; i < allowedModes.length; ++i) {
    if ($equals(allowedModes[i], currentMode)) {
      return;
    }
  }
  allowedModes.length == 1 && $equals('CSS1Compat', allowedModes[0]) && $equals('BackCompat', currentMode)?"GWT no longer supports Quirks Mode (document.compatMode=' BackCompat').<br>Make sure your application's host HTML page has a Standards Mode (document.compatMode=' CSS1Compat') doctype,<br>e.g. by using &lt;!doctype html&gt; at the start of your application's HTML page.<br><br>To continue using this unsupported rendering mode and risk layout problems, suppress this message by adding<br>the following line to your*.gwt.xml module file:<br>&nbsp;&nbsp;&lt;extend-configuration-property name=\"document.compatMode\" value=\"" + currentMode + '"/&gt;':"Your *.gwt.xml module configuration prohibits the use of the current doucment rendering mode (document.compatMode=' " + currentMode + "').<br>Modify your application's host HTML page doctype, or update your custom 'document.compatMode' configuration property settings.";
}

var handlers_0 = null;
function fire_4(handlers, nativeEvent){
  var lastIsCanceled, lastIsConsumed, lastIsFirstHandler, lastNativeEvent, ret;
  if (!!TYPE_9 && !!handlers && $isEventHandled(handlers, TYPE_9)) {
    lastIsCanceled = singleton.isCanceled;
    lastIsConsumed = singleton.isConsumed;
    lastIsFirstHandler = singleton.isFirstHandler;
    lastNativeEvent = singleton.nativeEvent;
    singleton.revive();
    singleton.setNativeEvent(nativeEvent);
    $fireEvent_0(handlers, singleton);
    ret = !(singleton.isCanceled_0() && !singleton.isConsumed_0());
    singleton.isCanceled = lastIsCanceled;
    singleton.isConsumed = lastIsConsumed;
    singleton.isFirstHandler = lastIsFirstHandler;
    singleton.nativeEvent = lastNativeEvent;
    return ret;
  }
  return true;
}

var TYPE_9 = null, singleton = null;
function $clinit_History(){
  $clinit_History = nullMethod;
  impl_0 = new HistoryImplIE6_0;
  $init(impl_0) || (impl_0 = null);
}

var impl_0 = null;
function Timer$1_0(){
}

defineSeed(304, 1, makeCastMap([Q$CloseHandler, Q$EventHandler]), Timer$1_0);
_.onClose = function onClose(event_0){
  while (($clinit_Timer() , timers).size_0 > 0) {
    $cancel_0(dynamicCast($get_3(timers, 0), Q$Timer));
  }
}
;
function addCloseHandler(handler){
  maybeInitializeCloseHandlers();
  return addHandler(TYPE_5?TYPE_5:(TYPE_5 = new GwtEvent$Type_0), handler);
}

function addHandler(type, handler){
  return $addHandler_0((!handlers_1 && (handlers_1 = new Window$WindowHandlers_0) , handlers_1), type, handler);
}

function alert_0(msg){
  $wnd.alert(msg);
}

function maybeInitializeCloseHandlers(){
  if (!closeHandlersInitialized) {
    $initHandler('function __gwt_initWindowCloseHandler(beforeunload, unload) {\n  var wnd = window\n  , oldOnBeforeUnload = wnd.onbeforeunload\n  , oldOnUnload = wnd.onunload;\n  \n  wnd.onbeforeunload = function(evt) {\n    var ret, oldRet;\n    try {\n      ret = beforeunload();\n    } finally {\n      oldRet = oldOnBeforeUnload && oldOnBeforeUnload(evt);\n    }\n    // Avoid returning null as IE6 will coerce it into a string.\n    // Ensure that "" gets returned properly.\n    if (ret != null) {\n      return ret;\n    }\n    if (oldRet != null) {\n      return oldRet;\n    }\n    // returns undefined.\n  };\n  \n  wnd.onunload = function(evt) {\n    try {\n      unload();\n    } finally {\n      oldOnUnload && oldOnUnload(evt);\n      wnd.onresize = null;\n      wnd.onscroll = null;\n      wnd.onbeforeunload = null;\n      wnd.onunload = null;\n    }\n  };\n  \n  // Remove the reference once we\'ve initialize the handler\n  wnd.__gwt_initWindowCloseHandler = undefined;\n}\n', new WindowImplIE$1_0);
    closeHandlersInitialized = true;
  }
}

function onClosed(){
  closeHandlersInitialized && fire_0((!handlers_1 && (handlers_1 = new Window$WindowHandlers_0) , handlers_1));
}

function onClosing(){
  var event_0;
  if (closeHandlersInitialized) {
    event_0 = new Window$ClosingEvent_0;
    !!handlers_1 && $fireEvent_0(handlers_1, event_0);
    return null;
  }
  return null;
}

var closeHandlersInitialized = false, handlers_1 = null;
function $clinit_Window$ClosingEvent(){
  $clinit_Window$ClosingEvent = nullMethod;
  TYPE_10 = new GwtEvent$Type_0;
}

function Window$ClosingEvent_0(){
  $clinit_Window$ClosingEvent();
}

defineSeed(306, 28, {}, Window$ClosingEvent_0);
_.dispatch = function dispatch_10(handler){
  throwClassCastExceptionUnlessNull(handler);
  null.nullMethod();
}
;
_.getAssociatedType = function getAssociatedType_11(){
  return TYPE_10;
}
;
var TYPE_10;
function Window$WindowHandlers_0(){
  HandlerManager_0.call(this, null);
}

defineSeed(308, 240, makeCastMap([Q$HasHandlers]), Window$WindowHandlers_0);
function $eventGetTypeInt(eventType){
  switch (eventType) {
    case 'blur':
      return 4096;
    case 'change':
      return 1024;
    case 'click':
      return 1;
    case 'dblclick':
      return 2;
    case 'focus':
      return 2048;
    case 'keydown':
      return 128;
    case 'keypress':
      return 256;
    case 'keyup':
      return 512;
    case 'load':
      return 32768;
    case 'losecapture':
      return 8192;
    case 'mousedown':
      return 4;
    case 'mousemove':
      return 64;
    case 'mouseout':
      return 32;
    case 'mouseover':
      return 16;
    case 'mouseup':
      return 8;
    case 'scroll':
      return 16384;
    case 'error':
      return 65536;
    case 'DOMMouseScroll':
    case 'mousewheel':
      return 131072;
    case 'contextmenu':
      return 262144;
    case 'paste':
      return 524288;
    case 'touchstart':
      return 1048576;
    case 'touchmove':
      return 2097152;
    case 'touchend':
      return 4194304;
    case 'touchcancel':
      return 8388608;
    case 'gesturestart':
      return 16777216;
    case 'gesturechange':
      return 33554432;
    case 'gestureend':
      return 67108864;
    default:return -1;
  }
}

function $maybeInitializeEventSystem(){
  if (!eventSystemIsInitialized) {
    $initEventSystem();
    eventSystemIsInitialized = true;
  }
}

function $setEventListener(elem, listener){
  elem.__listener = listener;
}

var eventSystemIsInitialized = false;
function $initEventSystem(){
  $wnd.__gwt_globalEventArray == null && ($wnd.__gwt_globalEventArray = new Array);
  $wnd.__gwt_globalEventArray[$wnd.__gwt_globalEventArray.length] = $entry(function(){
    return previewEvent($wnd.event);
  }
  );
  var dispatchEvent_0 = $entry(function(){
    var oldEventTarget = currentEventTarget;
    currentEventTarget = this;
    if ($wnd.event.returnValue == null) {
      $wnd.event.returnValue = true;
      if (!previewEventImpl()) {
        currentEventTarget = oldEventTarget;
        return;
      }
    }
    var listener, curElem = this;
    while (curElem && !(listener = curElem.__listener)) {
      curElem = curElem.parentElement;
    }
    listener && !instanceOfJso(listener) && instanceOf(listener, Q$EventListener) && dispatchEvent_1($wnd.event, curElem, listener);
    currentEventTarget = oldEventTarget;
  }
  );
  var dispatchDblClickEvent = $entry(function(){
    var newEvent = $doc.createEventObject();
    $wnd.event.returnValue == null && $wnd.event.srcElement.fireEvent && $wnd.event.srcElement.fireEvent('onclick', newEvent);
    if (this.__eventBits & 2) {
      dispatchEvent_0.call(this);
    }
     else if ($wnd.event.returnValue == null) {
      $wnd.event.returnValue = true;
      previewEventImpl();
    }
  }
  );
  var dispatchUnhandledEvent = $entry(function(){
    this.__gwtLastUnhandledEvent = $wnd.event.type;
    dispatchEvent_0.call(this);
  }
  );
  var moduleName = $moduleName.replace(/\./g, '_');
  $wnd['__gwt_dispatchEvent_' + moduleName] = dispatchEvent_0;
  callDispatchEvent = (new Function('w', 'return function() { w.__gwt_dispatchEvent_' + moduleName + '.call(this) }'))($wnd);
  $wnd['__gwt_dispatchDblClickEvent_' + moduleName] = dispatchDblClickEvent;
  callDispatchDblClickEvent = (new Function('w', 'return function() { w.__gwt_dispatchDblClickEvent_' + moduleName + '.call(this)}'))($wnd);
  $wnd['__gwt_dispatchUnhandledEvent_' + moduleName] = dispatchUnhandledEvent;
  callDispatchUnhandledEvent = (new Function('w', 'return function() { w.__gwt_dispatchUnhandledEvent_' + moduleName + '.call(this)}'))($wnd);
  callDispatchOnLoadEvent = (new Function('w', 'return function() { w.__gwt_dispatchUnhandledEvent_' + moduleName + '.call(w.event.srcElement)}'))($wnd);
  var bodyDispatcher = $entry(function(){
    dispatchEvent_0.call($doc.body);
  }
  );
  var bodyDblClickDispatcher = $entry(function(){
    dispatchDblClickEvent.call($doc.body);
  }
  );
  $doc.body.attachEvent('onclick', bodyDispatcher);
  $doc.body.attachEvent('onmousedown', bodyDispatcher);
  $doc.body.attachEvent('onmouseup', bodyDispatcher);
  $doc.body.attachEvent('onmousemove', bodyDispatcher);
  $doc.body.attachEvent('onmousewheel', bodyDispatcher);
  $doc.body.attachEvent('onkeydown', bodyDispatcher);
  $doc.body.attachEvent('onkeypress', bodyDispatcher);
  $doc.body.attachEvent('onkeyup', bodyDispatcher);
  $doc.body.attachEvent('onfocus', bodyDispatcher);
  $doc.body.attachEvent('onblur', bodyDispatcher);
  $doc.body.attachEvent('ondblclick', bodyDblClickDispatcher);
  $doc.body.attachEvent('oncontextmenu', bodyDispatcher);
}

function $sinkEvents_0(elem, bits){
  $maybeInitializeEventSystem();
  $sinkEventsImpl(elem, bits);
}

function $sinkEventsImpl(elem, bits){
  var chMask = (elem.__eventBits || 0) ^ bits;
  elem.__eventBits = bits;
  if (!chMask)
    return;
  chMask & 1 && (elem.onclick = bits & 1?callDispatchEvent:null);
  chMask & 3 && (elem.ondblclick = bits & 3?callDispatchDblClickEvent:null);
  chMask & 4 && (elem.onmousedown = bits & 4?callDispatchEvent:null);
  chMask & 8 && (elem.onmouseup = bits & 8?callDispatchEvent:null);
  chMask & 16 && (elem.onmouseover = bits & 16?callDispatchEvent:null);
  chMask & 32 && (elem.onmouseout = bits & 32?callDispatchEvent:null);
  chMask & 64 && (elem.onmousemove = bits & 64?callDispatchEvent:null);
  chMask & 128 && (elem.onkeydown = bits & 128?callDispatchEvent:null);
  chMask & 256 && (elem.onkeypress = bits & 256?callDispatchEvent:null);
  chMask & 512 && (elem.onkeyup = bits & 512?callDispatchEvent:null);
  chMask & 1024 && (elem.onchange = bits & 1024?callDispatchEvent:null);
  chMask & 2048 && (elem.onfocus = bits & 2048?callDispatchEvent:null);
  chMask & 4096 && (elem.onblur = bits & 4096?callDispatchEvent:null);
  chMask & 8192 && (elem.onlosecapture = bits & 8192?callDispatchEvent:null);
  chMask & 16384 && (elem.onscroll = bits & 16384?callDispatchEvent:null);
  chMask & 32768 && (elem.nodeName == 'IFRAME'?bits & 32768?elem.attachEvent('onload', callDispatchOnLoadEvent):elem.detachEvent('onload', callDispatchOnLoadEvent):(elem.onload = bits & 32768?callDispatchUnhandledEvent:null));
  chMask & 65536 && (elem.onerror = bits & 65536?callDispatchEvent:null);
  chMask & 131072 && (elem.onmousewheel = bits & 131072?callDispatchEvent:null);
  chMask & 262144 && (elem.oncontextmenu = bits & 262144?callDispatchEvent:null);
  chMask & 524288 && (elem.onpaste = bits & 524288?callDispatchEvent:null);
}

function previewEventImpl(){
  var isCancelled = false;
  for (var i = 0; i < $wnd.__gwt_globalEventArray.length; i++) {
    !$wnd.__gwt_globalEventArray[i]() && (isCancelled = true);
  }
  return !isCancelled;
}

var callDispatchDblClickEvent = null, callDispatchEvent = null, callDispatchOnLoadEvent = null, callDispatchUnhandledEvent = null;
function $addValueChangeHandler(this$static, handler){
  return $addHandler_0(this$static.handlers, (!TYPE_8 && (TYPE_8 = new GwtEvent$Type_0) , TYPE_8), handler);
}

function $newItem(this$static, historyToken){
  historyToken = historyToken == null?'':historyToken;
  if (!$equals(historyToken, token_0 == null?'':token_0)) {
    token_0 = historyToken;
    $updateHash(this$static, historyToken);
    $navigateFrame(this$static, historyToken);
    fire_3(this$static, historyToken);
  }
}

function setToken(token){
  token_0 = token;
}

defineSeed(313, 1, makeCastMap([Q$HasHandlers]));
_.decodeFragment = function decodeFragment(encodedFragment){
  return decodeURI(encodedFragment.replace('%23', '#'));
}
;
_.encodeFragment = function encodeFragment(fragment){
  return encodeURI(fragment).replace('#', '%23');
}
;
_.fireEvent_0 = function fireEvent_1(event_0){
  $fireEvent_0(this.handlers, event_0);
}
;
_.nativeUpdateOnEvent = function nativeUpdateOnEvent(historyToken){
}
;
_.newItemOnEvent = function newItemOnEvent(historyToken){
  historyToken = historyToken == null?'':historyToken;
  if (!$equals(historyToken, token_0 == null?'':token_0)) {
    token_0 = historyToken;
    this.nativeUpdateOnEvent(historyToken);
    fire_3(this, historyToken);
  }
}
;
var token_0 = '';
--></script>
<script><!--
function $init(this$static){
  var tokenElement;
  this$static.historyFrame = $doc.getElementById('__gwt_historyFrame');
  if (!this$static.historyFrame) {
    return false;
  }
  $initHistoryToken(this$static);
  tokenElement = getTokenElement(this$static.historyFrame);
  tokenElement?setToken(tokenElement.innerText):$navigateFrame(this$static, token_0 == null?'':token_0);
  $injectGlobalHandler(this$static);
  $initUrlCheckTimer(this$static);
  return true;
}

function $initHistoryToken(this$static){
  var token = '';
  var hash = getLocationHash();
  if (hash.length > 0) {
    try {
      token = this$static.decodeFragment(hash.substring(1));
    }
     catch (e) {
      $wnd.location.hash = '';
    }
  }
  token_0 = token;
}

function $initUrlCheckTimer(this$static){
  var historyImplRef = this$static;
  var urlChecker = $entry(function(){
    $wnd.setTimeout(urlChecker, 250);
    if (historyImplRef.handleWindowReloadCanceled()) {
      return;
    }
    var hash = getLocationHash();
    if (hash.length > 0) {
      var token = '';
      try {
        token = historyImplRef.decodeFragment(hash.substring(1));
      }
       catch (e) {
        historyImplRef.reloadWindow();
      }
      var historyToken = token_0 == null?'':token_0;
      historyToken && token != historyToken && historyImplRef.reloadWindow();
    }
  }
  );
  urlChecker();
}

function $injectGlobalHandler(this$static){
  var historyImplRef = this$static;
  var oldOnLoad = $wnd.__gwt_onHistoryLoad;
  $wnd.__gwt_onHistoryLoad = $entry(function(token){
    historyImplRef.newItemOnEvent(token);
    oldOnLoad && oldOnLoad(token);
  }
  );
}

function $navigateFrame(this$static, token){
  var escaped = (div = $createElement($doc, 'div') , $setInnerText(div, token) , div.innerHTML), div;
  var doc = this$static.historyFrame.contentWindow.document;
  doc.open();
  doc.write('<html><body onload="if(parent.__gwt_onHistoryLoad)parent.__gwt_onHistoryLoad(__gwt_historyToken.innerText)"><div id="__gwt_historyToken">' + escaped + '<\/div><\/body><\/html>');
  doc.close();
}

function $updateHash(this$static, token){
  $wnd.location.hash = this$static.encodeFragment(token);
}

function HistoryImplIE6_0(){
  this.handlers = new HandlerManager_0(null);
}

function getLocationHash(){
  var href = $wnd.location.href;
  var hashLoc = href.lastIndexOf('#');
  return hashLoc > 0?href.substring(hashLoc):'';
}

function getTokenElement(historyFrame){
  if (historyFrame.contentWindow) {
    var doc = historyFrame.contentWindow.document;
    return doc.getElementById('__gwt_historyToken');
  }
}

defineSeed(314, 313, makeCastMap([Q$HasHandlers]), HistoryImplIE6_0);
_.handleWindowReloadCanceled = function handleWindowReloadCanceled(){
  if (this.reloadedWindow) {
    this.reloadedWindow = false;
    $updateHash(this, token_0 == null?'':token_0);
    return true;
  }
  return false;
}
;
_.nativeUpdateOnEvent = function nativeUpdateOnEvent_0(historyToken){
  $updateHash(this, historyToken);
}
;
_.reloadWindow = function reloadWindow(){
  this.reloadedWindow = true;
  $wnd.location.reload();
}
;
_.historyFrame = null;
_.reloadedWindow = false;
function $initHandler(initFunc, cmd){
  var scriptElem;
  scriptElem = $createScriptElement($doc, initFunc);
  $appendChild($doc.body, scriptElem);
  cmd.execute_0();
  $removeChild($doc.body, scriptElem);
}

function WindowImplIE$1_0(){
}

defineSeed(317, 1, {}, WindowImplIE$1_0);
_.execute_0 = function execute_3(){
  $wnd.__gwt_initWindowCloseHandler($entry(onClosing), $entry(onClosed));
}
;
function IncompatibleRemoteServiceException_0(){
  RuntimeException_0.call(this, 'This application is out of date, please click the refresh button on your browser.');
}

function IncompatibleRemoteServiceException_1(msg){
  $fillInStackTrace();
  this.detailMessage = 'This application is out of date, please click the refresh button on your browser. ( ' + msg + ' )';
}

function IncompatibleRemoteServiceException_2(cause){
  RuntimeException_1.call(this, 'The response could not be deserialized', cause);
}

defineSeed(320, 147, makeCastMap([Q$IsSerializable, Q$Serializable, Q$RuntimeException, Q$Throwable]), IncompatibleRemoteServiceException_0, IncompatibleRemoteServiceException_1, IncompatibleRemoteServiceException_2);
function deserialize_8(streamReader, instance){
  setDetailMessage(instance, $getString(streamReader, $readInt(streamReader)));
}

function instantiate_8(streamReader){
  return new IncompatibleRemoteServiceException_0;
}

function serialize(streamWriter, instance){
  $writeString(streamWriter, instance.detailMessage);
}

function InvocationException_0(s){
  RuntimeException_1.call(this, s, null);
}

function InvocationException_1(s, cause){
  RuntimeException_1.call(this, s, cause);
}

defineSeed(322, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), InvocationException_0, InvocationException_1);
function $create(this$static, serviceEntryPoint){
  this$static.builder = new RequestBuilder_0(($clinit_RequestBuilder() , POST), serviceEntryPoint);
  return this$static;
}

function $doFinish(rb){
  $setHeader_0(rb, 'X-GWT-Permutation', $strongName);
  $setHeader_0(rb, 'X-GWT-Module-Base', getModuleBaseURL());
}

function $doSetCallback(rb, callback){
  throwIfNull('callback', callback);
  rb.callback = callback;
}

function $doSetRequestData(rb, data){
  rb.requestData = data;
}

function $finish(this$static){
  try {
    $doFinish(this$static.builder);
    return this$static.builder;
  }
   finally {
    this$static.builder = null;
  }
}

function $setCallback(this$static, callback){
  $doSetCallback(this$static.builder, callback);
  return this$static;
}

function $setRequestData(this$static, data){
  $doSetRequestData(this$static.builder, data);
  return this$static;
}

function RpcRequestBuilder_0(){
}

defineSeed(323, 1, {}, RpcRequestBuilder_0);
_.builder = null;
function RpcTokenException_0(){
  RuntimeException_0.call(this, 'Invalid RPC token');
}

defineSeed(324, 147, makeCastMap([Q$IsSerializable, Q$Serializable, Q$RuntimeException, Q$Throwable]), RpcTokenException_0);
function deserialize_9(streamReader, instance){
  setDetailMessage(instance, $getString(streamReader, $readInt(streamReader)));
}

function instantiate_9(streamReader){
  return new RpcTokenException_0;
}

function SerializationException_0(msg){
  Exception_0.call(this, msg);
}

defineSeed(326, 148, makeCastMap([Q$SerializationException, Q$Serializable, Q$Throwable]), SerializationException_0);
function ServiceDefTarget$NoServiceEntryPointSpecifiedException_0(){
  InvocationException_0.call(this, 'Service implementation URL not specified');
}

defineSeed(327, 322, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), ServiceDefTarget$NoServiceEntryPointSpecifiedException_0);
function StatusCodeException_0(statusCode, encodedResponse){
  RuntimeException_1.call(this, statusCode + ' ' + encodedResponse, null);
}

defineSeed(328, 322, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), StatusCodeException_0);
function serialize_0(streamWriter, instance){
  $writeString(streamWriter, instance.nullField);
}

function deserialize_10(streamReader, instance){
  deserialize_12(streamReader, instance);
}

function instantiate_10(streamReader){
  var size;
  size = $readInt(streamReader);
  return initDim(_3Ljava_lang_Integer_2_classLit, makeCastMap([Q$Serializable, Q$Integer_$1, Q$Object_$1]), Q$Integer, size, 0);
}

function deserialize_11(streamReader, instance){
}

function instantiate_11(streamReader){
  return valueOf_1($readInt(streamReader));
}

function deserialize_12(streamReader, instance){
  var itemIndex;
  for (itemIndex = 0; itemIndex < instance.length; ++itemIndex) {
    setCheck(instance, itemIndex, $readObject(streamReader));
  }
}

function deserialize_13(streamReader, instance){
}

function instantiate_12(streamReader){
  return $getString(streamReader, $readInt(streamReader));
}

function serialize_1(streamWriter, instance){
  $writeInt(streamWriter, $addString(streamWriter, instance));
}

function setDetailMessage(instance, value){
  instance.detailMessage = value;
}

function serialize_2(streamWriter, instance){
  $append_1(streamWriter, toBase64(instance.getTime_0()));
}

function $setFlags(this$static, flags){
  this$static.flags = flags;
}

function $setVersion(this$static, version){
  this$static.version = version;
}

defineSeed(336, 1, {});
_.flags = 0;
_.version = 7;
function $readObject(this$static){
  var token, typeSignature, id, instance;
  token = $readInt(this$static);
  if (token < 0) {
    return $get_3(this$static.seenArray, -(token + 1));
  }
  typeSignature = $getString(this$static, token);
  if (typeSignature == null) {
    return null;
  }
  return id = ($add_7(this$static.seenArray, null) , this$static.seenArray.size_0) , instance = $instantiate(this$static.serializer, this$static, typeSignature) , $set_1(this$static.seenArray, id - 1, instance) , $deserialize(this$static.serializer, this$static, instance, typeSignature) , instance;
}

defineSeed(337, 336, {});
function $addString(this$static, string){
  var index, o;
  if (string == null) {
    return 0;
  }
  o = dynamicCast($get_2(this$static.stringMap, string), Q$Integer);
  if (o) {
    return o.value_0;
  }
  $add_7(this$static.stringTable, string);
  index = this$static.stringTable.size_0;
  $put_0(this$static.stringMap, string, valueOf_1(index));
  return index;
}

function $writeInt(this$static, fieldValue){
  append_0(this$static.encodeBuffer, '' + fieldValue);
}

function $writeObject(this$static, instance){
  var objIndex, typeSignature, clazz;
  if (!instance) {
    $writeInt(this$static, $addString(this$static, null));
    return;
  }
  objIndex = $containsKey(this$static.objectMap, instance)?dynamicCast($get_2(this$static.objectMap, instance), Q$Integer).value_0:-1;
  if (objIndex >= 0) {
    append_0(this$static.encodeBuffer, '' + -(objIndex + 1));
    return;
  }
  $put_0(this$static.objectMap, instance, valueOf_1(this$static.objectCount++));
  typeSignature = (clazz = instance.___clazz$ , $getSerializationSignature(this$static.serializer, clazz));
  $writeInt(this$static, $addString(this$static, typeSignature));
  $serialize(this$static.serializer, this$static, instance, typeSignature);
}

function $writeString(this$static, value){
  $writeInt(this$static, $addString(this$static, value));
}

defineSeed(338, 336, {});
_.objectCount = 0;
function $getString(this$static, index){
  return index > 0?this$static.stringTable[index - 1]:null;
}

function $prepareToRead(this$static, encoded){
  this$static.results = eval(encoded);
  this$static.index_0 = this$static.results.length;
  $clear_1(this$static.seenArray);
  $setVersion(this$static, $readInt(this$static));
  $setFlags(this$static, $readInt(this$static));
  if (this$static.version != 7) {
    throw new IncompatibleRemoteServiceException_1('Expecting version 7 from server, got ' + this$static.version + '.');
  }
  if (((this$static.flags | 3) ^ 3) != 0) {
    throw new IncompatibleRemoteServiceException_1('Got an unknown flag from server: ' + this$static.flags);
  }
  this$static.stringTable = this$static.results[--this$static.index_0];
}

function $readFloat(this$static){
  return this$static.results[--this$static.index_0];
}

function $readInt(this$static){
  return this$static.results[--this$static.index_0];
}

function ClientSerializationStreamReader_0(serializer){
  this.seenArray = new ArrayList_0;
  this.serializer = serializer;
}

defineSeed(339, 337, {}, ClientSerializationStreamReader_0);
_.index_0 = 0;
_.results = null;
_.serializer = null;
_.stringTable = null;
function $clinit_ClientSerializationStreamWriter(){
  $clinit_ClientSerializationStreamWriter = nullMethod;
  regex_0 = getQuotingRegex();
}

function $append_1(this$static, token){
  append_0(this$static.encodeBuffer, token);
}

function $toString_0(this$static){
  var buffer;
  buffer = new StringBuffer_0;
  append_0(buffer, '' + this$static.version);
  append_0(buffer, '' + this$static.flags);
  $writeStringTable(this$static, buffer);
  $append_2(buffer, $toString(this$static.encodeBuffer.data));
  return $toString(buffer.data);
}

function $writeStringTable(this$static, buffer){
  var s, s$iterator, stringTable;
  stringTable = this$static.stringTable;
  append_0(buffer, '' + stringTable.size_0);
  for (s$iterator = new AbstractList$IteratorImpl_0(stringTable); s$iterator.i < s$iterator.this$0_0.size_1();) {
    s = dynamicCast($next_3(s$iterator), Q$String);
    append_0(buffer, quoteString(s));
  }
  return buffer;
}

function ClientSerializationStreamWriter_0(serializer, moduleBaseURL, serializationPolicyStrongName){
  $clinit_ClientSerializationStreamWriter();
  this.objectMap = new IdentityHashMap_0;
  this.stringMap = new HashMap_0;
  this.stringTable = new ArrayList_0;
  this.serializer = serializer;
  this.moduleBaseURL = moduleBaseURL;
  this.serializationPolicyStrongName = serializationPolicyStrongName;
}

function append_0(sb, token){
  $clinit_ClientSerializationStreamWriter();
  $append_0(sb.data, token);
  $appendNonNull(sb.data, '|');
}

function getQuotingRegex(){
  var ua = navigator.userAgent.toLowerCase();
  if (ua.indexOf('android') != -1) {
    return /[\u0000\|\\\u0080-\uFFFF]/g;
  }
   else if (ua.indexOf('chrome/11') != -1) {
    return /[\u0000\|\\\u0300-\uFFFF]/g;
  }
   else if (ua.indexOf('webkit') != -1) {
    return /[\u0000\|\\\u0300-\u03ff\u0590-\u05FF\u0600-\u06ff\u0730-\u074A\u07eb-\u07f3\u0940-\u0963\u0980-\u09ff\u0a00-\u0a7f\u0b00-\u0b7f\u0e00-\u0e7f\u0f00-\u0fff\u1900-\u194f\u1a00-\u1a1f\u1b00-\u1b7f\u1cda-\u1cdc\u1dc0-\u1dff\u1f00-\u1fff\u2000-\u206f\u20d0-\u20ff\u2100-\u214f\u2300-\u23ff\u2a00-\u2aff\u3000-\u303f\uaab2-\uaab4\uD800-\uFFFF]/g;
  }
   else {
    return /[\u0000\|\\\uD800-\uFFFF]/g;
  }
}

function quoteString(str){
  var regex = regex_0;
  var idx = 0;
  var out = '';
  var result;
  while ((result = regex.exec(str)) != null) {
    out += str.substring(idx, result.index);
    idx = result.index + 1;
    var ch = result[0].charCodeAt(0);
    if (ch == 0) {
      out += '\\0';
    }
     else if (ch == 92) {
      out += '\\\\';
    }
     else if (ch == 124) {
      out += '\\!';
    }
     else {
      var hex = ch.toString(16);
      out += '\\u0000'.substring(0, 6 - hex.length) + hex;
    }
  }
  return out + str.substring(idx);
}

defineSeed(340, 338, {}, ClientSerializationStreamWriter_0);
_.toString$ = function toString_9(){
  return $toString_0(this);
}
;
_.encodeBuffer = null;
_.moduleBaseURL = null;
_.serializationPolicyStrongName = null;
_.serializer = null;
var regex_0;
function $finish_0(this$static, callback, responseHeader){
  var payload;
  payload = $toString_0(this$static.streamWriter);
  !!$stats && $stats_0($timeStat(this$static.statsContext, this$static.fullServiceName, 'requestSerialized'));
  return $doInvoke(this$static.this$0, responseHeader, this$static.fullServiceName, this$static.statsContext, payload, callback);
}

function $start(this$static, paramCount){
  !!$stats && $stats_0($timeStat(this$static.statsContext, this$static.fullServiceName, 'begin'));
  this$static.streamWriter = $createStreamWriter(this$static.this$0);
  this$static.this$0.rpcToken != null && $writeObject(this$static.streamWriter, this$static.this$0.rpcToken);
  $writeString(this$static.streamWriter, 'com.arsl.client.PaperaziService');
  $writeString(this$static.streamWriter, this$static.methodName);
  $writeInt(this$static.streamWriter, paramCount);
  return this$static.streamWriter;
}

function RemoteServiceProxy$ServiceHelper_0(this$0, methodName){
  this.this$0 = this$0;
  this.fullServiceName = 'PaperaziService_Proxy.' + methodName;
  this.methodName = methodName;
  this.statsContext = new RpcStatsContext_0;
}

defineSeed(341, 1, {}, RemoteServiceProxy$ServiceHelper_0);
_.fullServiceName = null;
_.methodName = null;
_.statsContext = null;
_.streamWriter = null;
_.this$0 = null;
function $onError(this$static, exception){
  this$static.callback.onFailure(exception);
}

function $onResponseReceived(this$static, response){
  var $e0, caught, e, encodedResponse, result, statusCode;
  result = null;
  caught = null;
  try {
    encodedResponse = response.val$xmlHttpRequest.responseText;
    statusCode = response.val$xmlHttpRequest.status;
    !!$stats && $stats_0($bytesStat(this$static.statsContext, this$static.methodName, encodedResponse.length, 'responseReceived'));
    statusCode != 200?(caught = new StatusCodeException_0(statusCode, encodedResponse)):encodedResponse == null?(caught = new InvocationException_0('No response payload from ' + this$static.methodName)):encodedResponse.indexOf('//OK') == 0?(result = this$static.responseReader.read_0($createStreamReader(this$static.streamFactory, encodedResponse))):encodedResponse.indexOf('//EX') == 0?(caught = dynamicCast($readObject($createStreamReader(this$static.streamFactory, encodedResponse)), Q$Throwable)):(caught = new InvocationException_0(encodedResponse + ' from ' + this$static.methodName));
  }
   catch ($e0) {
    $e0 = caught_0($e0);
    if (instanceOf($e0, Q$SerializationException)) {
      e = $e0;
      caught = new IncompatibleRemoteServiceException_2(e);
    }
     else if (instanceOf($e0, Q$Throwable)) {
      e = $e0;
      caught = e;
    }
     else 
      throw $e0;
  }
   finally {
    !!$stats && $stats_0($timeStat(this$static.statsContext, this$static.methodName, 'responseDeserialized'));
  }
  try {
    !caught?this$static.callback.onSuccess_0(result):this$static.callback.onFailure(caught);
  }
   finally {
    !!$stats && $stats_0($timeStat(this$static.statsContext, this$static.methodName, 'end'));
  }
}

function RequestCallbackAdapter_0(streamFactory, methodName, statsContext, callback, responseReader){
  this.streamFactory = streamFactory;
  this.callback = callback;
  this.methodName = methodName;
  this.statsContext = statsContext;
  this.responseReader = responseReader;
}

defineSeed(342, 1, {}, RequestCallbackAdapter_0);
_.callback = null;
_.methodName = null;
_.responseReader = null;
_.statsContext = null;
_.streamFactory = null;
function $clinit_RequestCallbackAdapter$ResponseReader(){
  $clinit_RequestCallbackAdapter$ResponseReader = nullMethod;
  BOOLEAN = new RequestCallbackAdapter$ResponseReader$1_0;
  BYTE = new RequestCallbackAdapter$ResponseReader$2_0;
  CHAR = new RequestCallbackAdapter$ResponseReader$3_0;
  DOUBLE = new RequestCallbackAdapter$ResponseReader$4_0;
  FLOAT = new RequestCallbackAdapter$ResponseReader$5_0;
  INT = new RequestCallbackAdapter$ResponseReader$6_0;
  LONG = new RequestCallbackAdapter$ResponseReader$7_0;
  OBJECT = new RequestCallbackAdapter$ResponseReader$8_0;
  SHORT = new RequestCallbackAdapter$ResponseReader$9_0;
  STRING = new RequestCallbackAdapter$ResponseReader$10_0;
  VOID = new RequestCallbackAdapter$ResponseReader$11_0;
  $VALUES_6 = initValues(_3Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$RequestCallbackAdapter$ResponseReader, [BOOLEAN, BYTE, CHAR, DOUBLE, FLOAT, INT, LONG, OBJECT, SHORT, STRING, VOID]);
}

function values_7(){
  $clinit_RequestCallbackAdapter$ResponseReader();
  return $VALUES_6;
}

defineSeed(343, 116, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]));
var $VALUES_6, BOOLEAN, BYTE, CHAR, DOUBLE, FLOAT, INT, LONG, OBJECT, SHORT, STRING, VOID;
function RequestCallbackAdapter$ResponseReader$1_0(){
  Enum_0.call(this, 'BOOLEAN', 0);
}

defineSeed(344, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$1_0);
_.read_0 = function read(streamReader){
  return $clinit_Boolean() , streamReader.results[--streamReader.index_0]?TRUE_1:FALSE_1;
}
;
function RequestCallbackAdapter$ResponseReader$10_0(){
  Enum_0.call(this, 'STRING', 9);
}

defineSeed(345, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$10_0);
_.read_0 = function read_0(streamReader){
  return $getString(streamReader, $readInt(streamReader));
}
;
function RequestCallbackAdapter$ResponseReader$11_0(){
  Enum_0.call(this, 'VOID', 10);
}

defineSeed(346, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$11_0);
_.read_0 = function read_1(streamReader){
  return null;
}
;
function RequestCallbackAdapter$ResponseReader$2_0(){
  Enum_0.call(this, 'BYTE', 1);
}

defineSeed(347, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$2_0);
_.read_0 = function read_2(streamReader){
  return valueOf(streamReader.results[--streamReader.index_0]);
}
;
function RequestCallbackAdapter$ResponseReader$3_0(){
  Enum_0.call(this, 'CHAR', 2);
}

defineSeed(348, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$3_0);
_.read_0 = function read_3(streamReader){
  return valueOf_0(streamReader.results[--streamReader.index_0]);
}
;
function RequestCallbackAdapter$ResponseReader$4_0(){
  Enum_0.call(this, 'DOUBLE', 3);
}

defineSeed(349, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$4_0);
_.read_0 = function read_4(streamReader){
  return new Double_0(streamReader.results[--streamReader.index_0]);
}
;
function RequestCallbackAdapter$ResponseReader$5_0(){
  Enum_0.call(this, 'FLOAT', 4);
}

defineSeed(350, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$5_0);
_.read_0 = function read_5(streamReader){
  return new Float_0($readFloat(streamReader));
}
;
function RequestCallbackAdapter$ResponseReader$6_0(){
  Enum_0.call(this, 'INT', 5);
}

defineSeed(351, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$6_0);
_.read_0 = function read_6(streamReader){
  return valueOf_1($readInt(streamReader));
}
;
function RequestCallbackAdapter$ResponseReader$7_0(){
  Enum_0.call(this, 'LONG', 6);
}

defineSeed(352, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$7_0);
_.read_0 = function read_7(streamReader){
  var s;
  return valueOf_2((s = streamReader.results[--streamReader.index_0] , longFromBase64(s)));
}
;
function RequestCallbackAdapter$ResponseReader$8_0(){
  Enum_0.call(this, 'OBJECT', 7);
}

defineSeed(353, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$8_0);
_.read_0 = function read_8(streamReader){
  return $readObject(streamReader);
}
;
function RequestCallbackAdapter$ResponseReader$9_0(){
  Enum_0.call(this, 'SHORT', 8);
}

defineSeed(354, 343, makeCastMap([Q$RequestCallbackAdapter$ResponseReader, Q$Serializable, Q$Comparable, Q$Enum]), RequestCallbackAdapter$ResponseReader$9_0);
_.read_0 = function read_9(streamReader){
  return valueOf_3(streamReader.results[--streamReader.index_0]);
}
;
function $bytesStat(this$static, method, bytes, eventType){
  var stat = this$static.timeStat(method, eventType);
  stat.bytes = bytes;
  return stat;
}

function $stats_0(data){
  return $stats(data);
}

function $timeStat(this$static, method, eventType){
  return {moduleName:$moduleName, sessionId:$sessionId, subSystem:'rpc', evtGroup:this$static.requestId, method:method, millis:(new Date).getTime(), type:eventType};
}

function RpcStatsContext_0(){
  RpcStatsContext_1.call(this, requestIdCounter++);
}

function RpcStatsContext_1(requestId){
  this.requestId = requestId;
}

defineSeed(355, 1, {}, RpcStatsContext_0);
_.timeStat = function timeStat(method, eventType){
  return $timeStat(this, method, eventType);
}
;
_.requestId = 0;
var requestIdCounter = 0;
function $deserialize_0(this$static, stream, instance, signature){
  this$static[signature][1](stream, instance);
}

function $instantiate_0(this$static, stream, signature){
  return this$static[signature][0](stream);
}

function $serialize_0(this$static, stream, instance, signature){
  this$static[signature][2](stream, instance);
}

function $clear_0(this$static){
  var it;
  it = new WidgetCollection$WidgetIterator_0(this$static.children_0);
  while (it.index_0 < it.this$0.size_0 - 1) {
    $next_1(it);
    $remove_6(it);
  }
}

defineSeed(359, 40, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$UIObject, Q$Widget]));
_.doAttachChildren = function doAttachChildren_0(){
  tryCommand(this, ($clinit_AttachDetachException() , attachCommand));
}
;
_.doDetachChildren = function doDetachChildren_0(){
  tryCommand(this, ($clinit_AttachDetachException() , detachCommand));
}
;
function $add_0(this$static, child, container){
  $removeFromParent(child);
  $add_6(this$static.children_0, child);
  $appendChild(container, ($clinit_PotentialElement() , $resolve(child.element)));
  $setParent(child, this$static);
}

function $remove_0(this$static, w){
  var elem;
  if (w.parent_0 != this$static) {
    return false;
  }
  try {
    $setParent(w, null);
  }
   finally {
    elem = w.element;
    $removeChild($getParentElement(elem), elem);
    $remove_5(this$static.children_0, w);
  }
  return true;
}

function ComplexPanel_0(){
  this.children_0 = new WidgetCollection_0(this);
}

defineSeed(358, 359, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$UIObject, Q$Widget]));
_.iterator = function iterator_0(){
  return new WidgetCollection$WidgetIterator_0(this.children_0);
}
;
_.remove = function remove_0(w){
  return $remove_0(this, w);
}
;
function $add_1(this$static, w){
  $add_0(this$static, w, this$static.element);
}

function $remove_1(this$static, w){
  var removed;
  removed = $remove_0(this$static, w);
  removed && changeToStaticPositioning(w.element);
  return removed;
}

function changeToStaticPositioning(elem){
  elem.style['left'] = '';
  elem.style['top'] = '';
  elem.style['position'] = '';
}

defineSeed(357, 358, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$UIObject, Q$Widget]));
_.remove = function remove_1(w){
  return $remove_1(this, w);
}
;
function $clinit_AttachDetachException(){
  $clinit_AttachDetachException = nullMethod;
  attachCommand = new AttachDetachException$1_0;
  detachCommand = new AttachDetachException$2_0;
}

function AttachDetachException_0(causes){
  UmbrellaException_2.call(this, causes);
}

function tryCommand(hasWidgets, c){
  $clinit_AttachDetachException();
  var $e0, caught, e, w, w$iterator;
  caught = null;
  for (w$iterator = hasWidgets.iterator(); w$iterator.hasNext();) {
    w = dynamicCast(w$iterator.next_0(), Q$Widget);
    try {
      c.execute_1(w);
    }
     catch ($e0) {
      $e0 = caught_0($e0);
      if (instanceOf($e0, Q$Throwable)) {
        e = $e0;
        !caught && (caught = new HashSet_0);
        $add_8(caught, e);
      }
       else 
        throw $e0;
    }
  }
  if (caught) {
    throw new AttachDetachException_0(caught);
  }
}

defineSeed(360, 245, makeCastMap([Q$UmbrellaException, Q$Serializable, Q$RuntimeException, Q$Throwable]), AttachDetachException_0);
var attachCommand, detachCommand;
function AttachDetachException$1_0(){
}

defineSeed(361, 1, {}, AttachDetachException$1_0);
_.execute_1 = function execute_5(w){
  w.onAttach();
}
;
function AttachDetachException$2_0(){
}

defineSeed(362, 1, {}, AttachDetachException$2_0);
_.execute_1 = function execute_6(w){
  w.onDetach();
}
;
function $onAttach_0(this$static){
  var tabIndex;
  $onAttach(this$static);
  tabIndex = this$static.getTabIndex();
  -1 == tabIndex && this$static.setTabIndex(0);
}

function FocusWidget_0(elem){
  this.element = elem;
}

defineSeed(365, 40, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]));
_.getTabIndex = function getTabIndex(){
  return this.element.tabIndex;
}
;
_.onAttach = function onAttach_1(){
  $onAttach_0(this);
}
;
_.setTabIndex = function setTabIndex(index){
  $setTabIndex(this.element, index);
}
;
function $setHTML(this$static, html){
  $setInnerHTML(this$static.element, html);
}

function ButtonBase_0(elem){
  this.element = elem;
}

defineSeed(364, 365, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]));
function Button_0(){
  ButtonBase_0.call(this, $doc.createElement("<BUTTON type='button'><\/BUTTON>"));
  this.element['className'] = 'gwt-Button';
}

function Button_1(){
  Button_0.call(this);
  $setInnerHTML(this.element, 'Sign Out');
}

defineSeed(363, 364, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]), Button_0, Button_1);
function CellPanel_0(){
  ComplexPanel_0.call(this);
  this.table = $createElement($doc, 'table');
  this.body_0 = $createElement($doc, 'tbody');
  appendChild(this.table, this.body_0);
  $setElement(this, this.table);
}

defineSeed(368, 358, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$UIObject, Q$Widget]));
_.body_0 = null;
_.table = null;
function $setTextOrHtml(this$static, content_0){
  $setInnerText(this$static.element, content_0);
  if (this$static.textDir != this$static.initialElementDir) {
    this$static.textDir = this$static.initialElementDir;
    setDirectionOnElement(this$static.element, this$static.initialElementDir);
  }
}

--></script>
<script><!--
function DirectionalTextHelper_0(element){
  this.element = element;
  this.initialElementDir = getDirectionOnElement(element);
  this.textDir = this.initialElementDir;
}

defineSeed(372, 1, {}, DirectionalTextHelper_0);
_.element = null;
_.initialElementDir = null;
_.textDir = null;
function $addAndReplaceElement(this$static, widget, toReplace){
  var clientElem;
  clientElem = toReplace;
  $addAndReplaceElement_0(this$static, widget, clientElem);
}

function $addAndReplaceElement_0(this$static, widget, toReplace){
  var children, next, toRemove;
  if (toReplace == widget.element) {
    return;
  }
  $removeFromParent(widget);
  toRemove = null;
  children = new WidgetCollection$WidgetIterator_0(this$static.children_0);
  while (children.index_0 < children.this$0.size_0 - 1) {
    next = $next_1(children);
    if (isOrHasChildImpl(toReplace, next.element)) {
      if (next.element == toReplace) {
        toRemove = next;
        break;
      }
      $remove_6(children);
    }
  }
  $add_6(this$static.children_0, widget);
  if (!toRemove) {
    $replaceChild(toReplace.parentNode, widget.element, toReplace);
  }
   else {
    $insertBefore(toReplace.parentNode, widget.element, toReplace);
    $remove_0(this$static, toRemove);
  }
  $setParent(widget, this$static);
}

function HTMLPanel_0(html){
  ComplexPanel_0.call(this);
  $setElement(this, $createElement($doc, 'div'));
  $setInnerHTML(this.element, html);
}

defineSeed(375, 358, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$UIObject, Q$Widget]), HTMLPanel_0);
function $clinit_HasHorizontalAlignment(){
  $clinit_HasHorizontalAlignment = nullMethod;
  new HasHorizontalAlignment$HorizontalAlignmentConstant_0(($clinit_Style$TextAlign() , 'center'));
  new HasHorizontalAlignment$HorizontalAlignmentConstant_0('justify');
  ALIGN_LEFT = new HasHorizontalAlignment$HorizontalAlignmentConstant_0('left');
  new HasHorizontalAlignment$HorizontalAlignmentConstant_0('right');
  ALIGN_LOCALE_START = ($clinit_LocaleInfo() , ALIGN_LEFT);
  ALIGN_DEFAULT = ALIGN_LOCALE_START;
}

var ALIGN_DEFAULT, ALIGN_LEFT, ALIGN_LOCALE_START;
defineSeed(380, 1, {});
function HasHorizontalAlignment$HorizontalAlignmentConstant_0(textAlignString){
  this.textAlignString = textAlignString;
}

defineSeed(381, 380, {}, HasHorizontalAlignment$HorizontalAlignmentConstant_0);
_.textAlignString = null;
function $clinit_HasVerticalAlignment(){
  $clinit_HasVerticalAlignment = nullMethod;
  new HasVerticalAlignment$VerticalAlignmentConstant_0('bottom');
  new HasVerticalAlignment$VerticalAlignmentConstant_0('middle');
  ALIGN_TOP = new HasVerticalAlignment$VerticalAlignmentConstant_0('top');
}

var ALIGN_TOP;
function HasVerticalAlignment$VerticalAlignmentConstant_0(verticalAlignString){
  this.verticalAlignString = verticalAlignString;
}

defineSeed(382, 1, {}, HasVerticalAlignment$VerticalAlignmentConstant_0);
_.verticalAlignString = null;
function $add_3(this$static, w){
  var td, td_0;
  td = (td_0 = $createElement($doc, 'td') , td_0['align'] = this$static.horzAlign.textAlignString , setStyleAttribute(td_0, 'verticalAlign', this$static.vertAlign.verticalAlignString) , td_0);
  appendChild(this$static.tableRow, td);
  $add_0(this$static, w, td);
}

function HorizontalPanel_0(){
  CellPanel_0.call(this);
  this.horzAlign = ($clinit_HasHorizontalAlignment() , ALIGN_DEFAULT);
  this.vertAlign = ($clinit_HasVerticalAlignment() , ALIGN_TOP);
  this.tableRow = $createElement($doc, 'tr');
  appendChild(this.body_0, this.tableRow);
  this.table['cellSpacing'] = '0';
  this.table['cellPadding'] = '0';
}

defineSeed(383, 368, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$UIObject, Q$Widget]), HorizontalPanel_0);
_.remove = function remove_5(w){
  var removed, td;
  td = $getParentElement(w.element);
  removed = $remove_0(this, w);
  removed && $removeChild(this.tableRow, td);
  return removed;
}
;
_.tableRow = null;
function LabelBase_0(element){
  this.element = element;
  this.directionalTextHelper = new DirectionalTextHelper_0(this.element);
}

defineSeed(389, 40, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]));
_.directionalTextHelper = null;
function Label_0(){
  LabelBase_0.call(this, $createElement($doc, 'div'));
  this.element['className'] = 'gwt-Label';
}

function Label_1(){
  Label_0.call(this);
  $setTextOrHtml(this.directionalTextHelper, 'logo');
}

defineSeed(388, 389, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]), Label_0, Label_1);
function ValueBoxBase_0(elem){
  this.element = elem;
  this.autoDirHandler = addTo($clinit_LocaleInfo());
}

defineSeed(394, 365, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]));
_.onBrowserEvent = function onBrowserEvent_3(event_0){
  var type;
  type = $eventGetTypeInt(event_0.type);
  (type & 896) != 0?$onBrowserEvent(this, event_0):$onBrowserEvent(this, event_0);
}
;
_.onLoad = function onLoad_2(){
}
;
_.autoDirHandler = null;
function $clinit_TextBoxBase(){
  $clinit_TextBoxBase = nullMethod;
  $clinit_ValueBoxBase$TextAlignment();
}

defineSeed(393, 394, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]));
function TextBox_0(){
  $clinit_TextBoxBase();
  TextBox_1.call(this, $createInputElement($doc, 'text'), 'gwt-TextBox');
}

function TextBox_1(element, styleName){
  ValueBoxBase_0.call(this, element, (!INSTANCE_2 && (INSTANCE_2 = new PassthroughRenderer_0) , !INSTANCE_1 && (INSTANCE_1 = new PassthroughParser_0)));
  styleName != null && (this.element['className'] = styleName , undefined);
}

defineSeed(392, 393, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]), TextBox_0);
function PasswordTextBox_0(){
  $clinit_TextBoxBase();
  TextBox_1.call(this, $createInputElement($doc, 'password'), 'gwt-PasswordTextBox');
}

defineSeed(391, 392, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$IsWidget, Q$UIObject, Q$Widget]), PasswordTextBox_0);
function $clinit_PotentialElement(){
  $clinit_PotentialElement = nullMethod;
  declareShim();
}

function $resolve(this$static){
  return this$static.__gwt_resolve?this$static.__gwt_resolve():this$static;
}

function $setResolver(this$static, resolver){
  this$static.__gwt_resolve = buildResolveCallback(resolver);
}

function buildResolveCallback(resolver){
  return function(){
    this.__gwt_resolve = cannotResolveTwice;
    return resolver.resolvePotentialElement();
  }
  ;
}

function cannotResolveTwice(){
  throw 'A PotentialElement cannot be resolved twice.';
}

function declareShim(){
  var shim = function(){
  }
  ;
  shim.prototype = {className:'', clientHeight:0, clientWidth:0, dir:'', getAttribute:function(name_0, value){
    return this[name_0];
  }
  , href:'', id:'', lang:'', nodeType:1, removeAttribute:function(name_0, value){
    this[name_0] = undefined;
  }
  , setAttribute:function(name_0, value){
    this[name_0] = value;
  }
  , src:'', style:{}, title:''};
  $wnd.GwtPotentialElementShim = shim;
}

function isPotential(o){
  $clinit_PotentialElement();
  try {
    return !!o && !!o.__gwt_resolve;
  }
   catch (e) {
    return false;
  }
}

function $clinit_RootPanel(){
  $clinit_RootPanel = nullMethod;
  maybeDetachCommand = new RootPanel$1_0;
  rootPanels = new HashMap_0;
  widgetsToDetach = new HashSet_0;
}

function RootPanel_0(elem){
  ComplexPanel_0.call(this);
  this.element = elem;
  $onAttach(this);
}

function detachNow(widget){
  $clinit_RootPanel();
  try {
    widget.onDetach();
  }
   finally {
    $remove_12(widgetsToDetach, widget);
  }
}

function detachWidgets(){
  $clinit_RootPanel();
  try {
    tryCommand(widgetsToDetach, maybeDetachCommand);
  }
   finally {
    $clearImpl(widgetsToDetach.map);
    $clearImpl(rootPanels);
  }
}

function get(id){
  $clinit_RootPanel();
  var elem, rp;
  rp = dynamicCast($get_2(rootPanels, id), Q$RootPanel);
  elem = null;
  if (id != null) {
    if (!(elem = $getElementById($doc, id))) {
      return null;
    }
  }
  if (rp) {
    if (!elem || rp.element == elem) {
      return rp;
    }
  }
  if (rootPanels.size_0 == 0) {
    addCloseHandler(new RootPanel$2_0);
    ($clinit_LocaleInfo() , false) && setDirectionOnElement($doc, ($clinit_HasDirection$Direction() , RTL));
  }
  !elem?(rp = new RootPanel$DefaultRootPanel_0):(rp = new RootPanel_0(elem));
  $put_0(rootPanels, id, rp);
  $add_8(widgetsToDetach, rp);
  return rp;
}

function getBodyElement(){
  $clinit_RootPanel();
  return $doc.body;
}

defineSeed(404, 357, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$RootPanel, Q$UIObject, Q$Widget]), RootPanel_0);
var maybeDetachCommand, rootPanels, widgetsToDetach;
function RootPanel$1_0(){
}

defineSeed(405, 1, {}, RootPanel$1_0);
_.execute_1 = function execute_8(w){
  w.isAttached() && w.onDetach();
}
;
function RootPanel$2_0(){
}

defineSeed(406, 1, makeCastMap([Q$CloseHandler, Q$EventHandler]), RootPanel$2_0);
_.onClose = function onClose_0(closeEvent){
  detachWidgets();
}
;
function RootPanel$DefaultRootPanel_0(){
  RootPanel_0.call(this, getBodyElement());
}

defineSeed(407, 404, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$RootPanel, Q$UIObject, Q$Widget]), RootPanel$DefaultRootPanel_0);
function $clinit_ValueBoxBase$TextAlignment(){
  $clinit_ValueBoxBase$TextAlignment = nullMethod;
  CENTER_0 = new ValueBoxBase$TextAlignment$1_0;
  JUSTIFY_0 = new ValueBoxBase$TextAlignment$2_0;
  LEFT_0 = new ValueBoxBase$TextAlignment$3_0;
  RIGHT_0 = new ValueBoxBase$TextAlignment$4_0;
  $VALUES_7 = initValues(_3Lcom_google_gwt_user_client_ui_ValueBoxBase$TextAlignment_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$ValueBoxBase$TextAlignment, [CENTER_0, JUSTIFY_0, LEFT_0, RIGHT_0]);
}

function values_8(){
  $clinit_ValueBoxBase$TextAlignment();
  return $VALUES_7;
}

defineSeed(409, 116, makeCastMap([Q$ValueBoxBase$TextAlignment, Q$Serializable, Q$Comparable, Q$Enum]));
var $VALUES_7, CENTER_0, JUSTIFY_0, LEFT_0, RIGHT_0;
function ValueBoxBase$TextAlignment$1_0(){
  Enum_0.call(this, 'CENTER', 0);
}

defineSeed(410, 409, makeCastMap([Q$ValueBoxBase$TextAlignment, Q$Serializable, Q$Comparable, Q$Enum]), ValueBoxBase$TextAlignment$1_0);
function ValueBoxBase$TextAlignment$2_0(){
  Enum_0.call(this, 'JUSTIFY', 1);
}

defineSeed(411, 409, makeCastMap([Q$ValueBoxBase$TextAlignment, Q$Serializable, Q$Comparable, Q$Enum]), ValueBoxBase$TextAlignment$2_0);
function ValueBoxBase$TextAlignment$3_0(){
  Enum_0.call(this, 'LEFT', 2);
}

defineSeed(412, 409, makeCastMap([Q$ValueBoxBase$TextAlignment, Q$Serializable, Q$Comparable, Q$Enum]), ValueBoxBase$TextAlignment$3_0);
function ValueBoxBase$TextAlignment$4_0(){
  Enum_0.call(this, 'RIGHT', 3);
}

defineSeed(413, 409, makeCastMap([Q$ValueBoxBase$TextAlignment, Q$Serializable, Q$Comparable, Q$Enum]), ValueBoxBase$TextAlignment$4_0);
function $add_5(this$static, w){
  var td, tr, td_0;
  tr = $createElement($doc, 'tr');
  td = (td_0 = $createElement($doc, 'td') , td_0['align'] = this$static.horzAlign.textAlignString , setStyleAttribute(td_0, 'verticalAlign', this$static.vertAlign.verticalAlignString) , td_0);
  $appendChild(tr, ($clinit_PotentialElement() , $resolve(td)));
  appendChild(this$static.body_0, tr);
  $add_0(this$static, w, td);
}

function VerticalPanel_0(){
  CellPanel_0.call(this);
  this.horzAlign = ($clinit_HasHorizontalAlignment() , ALIGN_DEFAULT);
  this.vertAlign = ($clinit_HasVerticalAlignment() , ALIGN_TOP);
  this.table['cellSpacing'] = '0';
  this.table['cellPadding'] = '0';
}

defineSeed(414, 368, makeCastMap([Q$HasAttachHandlers, Q$HasHandlers, Q$EventListener, Q$HasVisibility, Q$HasWidgets, Q$IsWidget, Q$UIObject, Q$Widget]), VerticalPanel_0);
_.remove = function remove_8(w){
  var removed, td;
  td = $getParentElement(w.element);
  removed = $remove_0(this, w);
  removed && $removeChild(this.body_0, $getParentElement(td));
  return removed;
}
;
function $add_6(this$static, w){
  $insert(this$static, w, this$static.size_0);
}

function $indexOf(this$static, w){
  var i;
  for (i = 0; i < this$static.size_0; ++i) {
    if (this$static.array[i] == w) {
      return i;
    }
  }
  return -1;
}

function $insert(this$static, w, beforeIndex){
  var i, newArray;
  if (beforeIndex < 0 || beforeIndex > this$static.size_0) {
    throw new IndexOutOfBoundsException_0;
  }
  if (this$static.size_0 == this$static.array.length) {
    newArray = initDim(_3Lcom_google_gwt_user_client_ui_Widget_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Widget, this$static.array.length * 2, 0);
    for (i = 0; i < this$static.array.length; ++i) {
      setCheck(newArray, i, this$static.array[i]);
    }
    this$static.array = newArray;
  }
  ++this$static.size_0;
  for (i = this$static.size_0 - 1; i > beforeIndex; --i) {
    setCheck(this$static.array, i, this$static.array[i - 1]);
  }
  setCheck(this$static.array, beforeIndex, w);
}

function $remove_4(this$static, index){
  var i;
  if (index < 0 || index >= this$static.size_0) {
    throw new IndexOutOfBoundsException_0;
  }
  --this$static.size_0;
  for (i = index; i < this$static.size_0; ++i) {
    setCheck(this$static.array, i, this$static.array[i + 1]);
  }
  setCheck(this$static.array, this$static.size_0, null);
}

function $remove_5(this$static, w){
  var index;
  index = $indexOf(this$static, w);
  if (index == -1) {
    throw new NoSuchElementException_0;
  }
  $remove_4(this$static, index);
}

function WidgetCollection_0(parent_0){
  this.parent_0 = parent_0;
  this.array = initDim(_3Lcom_google_gwt_user_client_ui_Widget_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Widget, 4, 0);
}

defineSeed(415, 1, {}, WidgetCollection_0);
_.iterator = function iterator_4(){
  return new WidgetCollection$WidgetIterator_0(this);
}
;
_.array = null;
_.parent_0 = null;
_.size_0 = 0;
function $next_1(this$static){
  if (this$static.index_0 >= this$static.this$0.size_0) {
    throw new NoSuchElementException_0;
  }
  return this$static.this$0.array[++this$static.index_0];
}

function $remove_6(this$static){
  if (this$static.index_0 < 0 || this$static.index_0 >= this$static.this$0.size_0) {
    throw new IllegalStateException_0;
  }
  this$static.this$0.parent_0.remove(this$static.this$0.array[this$static.index_0--]);
}

function WidgetCollection$WidgetIterator_0(this$0){
  this.this$0 = this$0;
}

defineSeed(416, 1, {}, WidgetCollection$WidgetIterator_0);
_.hasNext = function hasNext_1(){
  return this.index_0 < this.this$0.size_0 - 1;
}
;
_.next_0 = function next_2(){
  return $next_1(this);
}
;
_.index_0 = -1;
_.this$0 = null;
function $getRuntimeValue(){
  var ua = navigator.userAgent.toLowerCase();
  var makeVersion = function(result){
    return parseInt(result[1]) * 1000 + parseInt(result[2]);
  }
  ;
  if (function(){
    return ua.indexOf('opera') != -1;
  }
  ())
    return 'opera';
  if (function(){
    return ua.indexOf('webkit') != -1;
  }
  ())
    return 'safari';
  if (function(){
    return ua.indexOf('msie') != -1 && $doc.documentMode >= 9;
  }
  ())
    return 'ie9';
  if (function(){
    return ua.indexOf('msie') != -1 && $doc.documentMode >= 8;
  }
  ())
    return 'ie8';
  if (function(){
    var result = /msie ([0-9]+)\.([0-9]+)/.exec(ua);
    if (result && result.length == 3)
      return makeVersion(result) >= 6000;
  }
  ())
    return 'ie6';
  if (function(){
    return ua.indexOf('gecko') != -1;
  }
  ())
    return 'gecko1_8';
  return 'unknown';
}

function $clearOnReadyStateChange(this$static){
  var self_0 = this$static;
  $wnd.setTimeout(function(){
    self_0.onreadystatechange = new Function;
  }
  , 0);
}

function $open(this$static, httpMethod, url){
  this$static.open(httpMethod, url, true);
}

function $setOnReadyStateChange(this$static, handler){
  var _this = this$static;
  this$static.onreadystatechange = $entry(function(){
    handler.onReadyStateChange(_this);
  }
  );
}

function $setRequestHeader(this$static, header, value){
  this$static.setRequestHeader(header, value);
}

function create_3(){
  var xhr;
  if ($wnd.XMLHttpRequest) {
    xhr = new $wnd.XMLHttpRequest;
  }
   else {
    try {
      xhr = new $wnd.ActiveXObject('MSXML2.XMLHTTP.3.0');
    }
     catch (e) {
      xhr = new $wnd.ActiveXObject('Microsoft.XMLHTTP');
    }
  }
  return xhr;
}

function SimpleEventBus$1_0(this$0, val$type, val$handler){
  this.this$0 = this$0;
  this.val$type = val$type;
  this.val$source = null;
  this.val$handler = val$handler;
}

defineSeed(448, 1, {}, SimpleEventBus$1_0);
_.this$0 = null;
_.val$handler = null;
_.val$source = null;
_.val$type = null;
function SimpleEventBus$2_0(this$0, val$type, val$handler){
  this.this$0 = this$0;
  this.val$type = val$type;
  this.val$source = null;
  this.val$handler = val$handler;
}

defineSeed(449, 1, makeCastMap([Q$SimpleEventBus$Command]), SimpleEventBus$2_0);
_.execute_0 = function execute_10(){
  $doAddNow(this.this$0, this.val$type, this.val$source, this.val$handler);
}
;
_.this$0 = null;
_.val$handler = null;
_.val$source = null;
_.val$type = null;
function ArithmeticException_0(){
  RuntimeException_0.call(this, 'divide by zero');
}

defineSeed(451, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), ArithmeticException_0);
function ArrayStoreException_0(){
  $fillInStackTrace();
}

defineSeed(452, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), ArrayStoreException_0);
function $clinit_Boolean(){
  $clinit_Boolean = nullMethod;
  FALSE_1 = new Boolean_1(false);
  TRUE_1 = new Boolean_1(true);
}

function Boolean_1(value){
  this.value_0 = value;
}

defineSeed(453, 1, makeCastMap([Q$Serializable, Q$Boolean, Q$Comparable]), Boolean_1);
_.equals$ = function equals_5(o){
  return instanceOf(o, Q$Boolean) && dynamicCast(o, Q$Boolean).value_0 == this.value_0;
}
;
_.hashCode$ = function hashCode_7(){
  return this.value_0?1231:1237;
}
;
_.toString$ = function toString_11(){
  return this.value_0?'true':'false';
}
;
_.value_0 = false;
var FALSE_1, TRUE_1;
defineSeed(455, 1, makeCastMap([Q$Serializable, Q$Number]));
function Byte_0(value){
  this.value_0 = value;
}

function valueOf(b){
  var rebase, result;
  rebase = b + 128;
  result = ($clinit_Byte$BoxedValues() , boxedValues_0)[rebase];
  !result && (result = boxedValues_0[rebase] = new Byte_0(b));
  return result;
}

defineSeed(454, 455, makeCastMap([Q$Serializable, Q$Byte, Q$Comparable, Q$Number]), Byte_0);
_.equals$ = function equals_6(o){
  return instanceOf(o, Q$Byte) && dynamicCast(o, Q$Byte).value_0 == this.value_0;
}
;
_.hashCode$ = function hashCode_8(){
  return this.value_0;
}
;
_.toString$ = function toString_12(){
  return '' + this.value_0;
}
;
_.value_0 = 0;
function $clinit_Byte$BoxedValues(){
  $clinit_Byte$BoxedValues = nullMethod;
  boxedValues_0 = initDim(_3Ljava_lang_Byte_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Byte, 256, 0);
}

var boxedValues_0;
function Character_0(value){
  this.value_0 = value;
}

function valueOf_0(c){
  var result;
  if (c < 128) {
    result = ($clinit_Character$BoxedValues() , boxedValues_1)[c];
    !result && (result = boxedValues_1[c] = new Character_0(c));
    return result;
  }
  return new Character_0(c);
}

defineSeed(457, 1, makeCastMap([Q$Serializable, Q$Character, Q$Comparable]), Character_0);
_.equals$ = function equals_7(o){
  return instanceOf(o, Q$Character) && dynamicCast(o, Q$Character).value_0 == this.value_0;
}
;
_.hashCode$ = function hashCode_9(){
  return this.value_0;
}
;
_.toString$ = function toString_13(){
  return valueOf_4(this.value_0);
}
;
_.value_0 = 0;
function $clinit_Character$BoxedValues(){
  $clinit_Character$BoxedValues = nullMethod;
  boxedValues_1 = initDim(_3Ljava_lang_Character_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Character, 128, 0);
}

var boxedValues_1;
function Class_0(){
}

function createForArray(packageName, className, seedId){
  var clazz;
  clazz = new Class_0;
  clazz.typeName = packageName + className;
  isInstantiable(seedId != 0?-seedId:0) && setClassLiteral(seedId != 0?-seedId:0, clazz);
  clazz.modifiers = 4;
  return clazz;
}

function createForClass(packageName, className, seedId){
  var clazz;
  clazz = new Class_0;
  clazz.typeName = packageName + className;
  isInstantiable(seedId) && setClassLiteral(seedId, clazz);
  return clazz;
}

function createForEnum(packageName, className, seedId, enumConstantsFunc){
  var clazz;
  clazz = new Class_0;
  clazz.typeName = packageName + className;
  isInstantiable(seedId) && setClassLiteral(seedId, clazz);
  clazz.modifiers = enumConstantsFunc?8:0;
  return clazz;
}

function createForInterface(packageName, className){
  var clazz;
  clazz = new Class_0;
  clazz.typeName = packageName + className;
  isInstantiable(0) && setClassLiteral(0, clazz);
  clazz.modifiers = 2;
  return clazz;
}

function getSeedFunction(clazz){
  var func = seedTable[clazz.seedId];
  clazz = null;
  return func;
}

function isInstantiable(seedId){
  return typeof seedId == 'number' && seedId > 0;
}

function setClassLiteral(seedId, clazz){
  var proto;
  clazz.seedId = seedId;
  if (seedId == 2) {
    proto = String.prototype;
  }
   else {
    if (seedId > 0) {
      var seed = getSeedFunction(clazz);
      if (seed) {
        proto = seed.prototype;
      }
       else {
        seed = seedTable[seedId] = function(){
        }
        ;
        seed.___clazz$ = clazz;
        return;
      }
    }
     else {
      return;
    }
  }
  proto.___clazz$ = clazz;
}

defineSeed(459, 1, {}, Class_0);
_.toString$ = function toString_14(){
  return ((this.modifiers & 2) != 0?'interface ':(this.modifiers & 1) != 0?'':'class ') + this.typeName;
}
;
_.modifiers = 0;
_.seedId = 0;
_.typeName = null;
function ClassCastException_0(){
  $fillInStackTrace();
}

defineSeed(460, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), ClassCastException_0);
function Double_0(value){
  this.value_0 = value;
}

defineSeed(461, 455, makeCastMap([Q$Serializable, Q$Comparable, Q$Double, Q$Number]), Double_0);
_.equals$ = function equals_8(o){
  return instanceOf(o, Q$Double) && dynamicCast(o, Q$Double).value_0 == this.value_0;
}
;
_.hashCode$ = function hashCode_10(){
  return round_int(this.value_0);
}
;
_.toString$ = function toString_15(){
  return '' + this.value_0;
}
;
_.value_0 = 0;
function Float_0(value){
  this.value_0 = value;
}

defineSeed(462, 455, makeCastMap([Q$Serializable, Q$Comparable, Q$Float, Q$Number]), Float_0);
_.equals$ = function equals_9(o){
  return instanceOf(o, Q$Float) && dynamicCast(o, Q$Float).value_0 == this.value_0;
}
;
_.hashCode$ = function hashCode_11(){
  return round_int(this.value_0);
}
;
_.toString$ = function toString_16(){
  return '' + this.value_0;
}
;
_.value_0 = 0;
function IllegalArgumentException_0(){
  $fillInStackTrace();
}

function IllegalArgumentException_1(message){
  RuntimeException_0.call(this, message);
}

defineSeed(463, 147, makeCastMap([Q$Serializable, Q$IllegalArgumentException, Q$RuntimeException, Q$Throwable]), IllegalArgumentException_0, IllegalArgumentException_1);
function IllegalStateException_0(){
  $fillInStackTrace();
}

function IllegalStateException_1(s){
  RuntimeException_0.call(this, s);
}

defineSeed(464, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), IllegalStateException_0, IllegalStateException_1);
function IndexOutOfBoundsException_0(){
  $fillInStackTrace();
}

function IndexOutOfBoundsException_1(message){
  RuntimeException_0.call(this, message);
}

defineSeed(465, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), IndexOutOfBoundsException_0, IndexOutOfBoundsException_1);
function Integer_0(value){
  this.value_0 = value;
}

function numberOfLeadingZeros_0(i){
  var m_0, n, y;
  if (i < 0) {
    return 0;
  }
   else if (i == 0) {
    return 32;
  }
   else {
    y = -(i >> 16);
    m_0 = y >> 16 & 16;
    n = 16 - m_0;
    i = i >> m_0;
    y = i - 256;
    m_0 = y >> 16 & 8;
    n += m_0;
    i <<= m_0;
    y = i - 4096;
    m_0 = y >> 16 & 4;
    n += m_0;
    i <<= m_0;
    y = i - 16384;
    m_0 = y >> 16 & 2;
    n += m_0;
    i <<= m_0;
    y = i >> 14;
    m_0 = y & ~(y >> 1);
    return n + 2 - m_0;
  }
}

function numberOfTrailingZeros(i){
  var r, rtn;
  if (i == 0) {
    return 32;
  }
   else {
    rtn = 0;
    for (r = 1; (r & i) == 0; r <<= 1) {
      ++rtn;
    }
    return rtn;
  }
}

function toPowerOfTwoString(value){
  var buf, digits, pos;
  buf = initDim(_3C_classLit, makeCastMap([Q$Serializable]), -1, 8, 1);
  digits = ($clinit_Number$__Digits() , digits_0);
  pos = 7;
  if (value >= 0) {
    while (value > 15) {
      buf[pos--] = digits[value & 15];
      value >>= 4;
    }
  }
   else {
    while (pos > 0) {
      buf[pos--] = digits[value & 15];
      value >>= 4;
    }
  }
  buf[pos] = digits[value & 15];
  return __valueOf(buf, pos, 8);
}

function valueOf_1(i){
  var rebase, result;
  if (i > -129 && i < 128) {
    rebase = i + 128;
    result = ($clinit_Integer$BoxedValues() , boxedValues_2)[rebase];
    !result && (result = boxedValues_2[rebase] = new Integer_0(i));
    return result;
  }
  return new Integer_0(i);
}

defineSeed(466, 455, makeCastMap([Q$Serializable, Q$Comparable, Q$Integer, Q$Number]), Integer_0);
_.equals$ = function equals_10(o){
  return instanceOf(o, Q$Integer) && dynamicCast(o, Q$Integer).value_0 == this.value_0;
}
;
_.hashCode$ = function hashCode_12(){
  return this.value_0;
}
;
_.toString$ = function toString_17(){
  return '' + this.value_0;
}
;
_.value_0 = 0;
function $clinit_Integer$BoxedValues(){
  $clinit_Integer$BoxedValues = nullMethod;
  boxedValues_2 = initDim(_3Ljava_lang_Integer_2_classLit, makeCastMap([Q$Serializable, Q$Integer_$1, Q$Object_$1]), Q$Integer, 256, 0);
}

var boxedValues_2;
function Long_0(value){
  this.value_0 = value;
}

function valueOf_2(i){
  var rebase, result;
  if (gt(i, N81_longLit) && lt(i, P80_longLit)) {
    rebase = toInt(i) + 128;
    result = ($clinit_Long$BoxedValues() , boxedValues_3)[rebase];
    !result && (result = boxedValues_3[rebase] = new Long_0(i));
    return result;
  }
  return new Long_0(i);
}

defineSeed(468, 455, makeCastMap([Q$Serializable, Q$Comparable, Q$Long, Q$Number]), Long_0);
_.equals$ = function equals_11(o){
  return instanceOf(o, Q$Long) && eq(dynamicCast(o, Q$Long).value_0, this.value_0);
}
;
_.hashCode$ = function hashCode_13(){
  return toInt(this.value_0);
}
;
_.toString$ = function toString_18(){
  return '' + toString_8(this.value_0);
}
;
_.value_0 = P0_longLit;
function $clinit_Long$BoxedValues(){
  $clinit_Long$BoxedValues = nullMethod;
  boxedValues_3 = initDim(_3Ljava_lang_Long_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Long, 256, 0);
}

var boxedValues_3;
function NullPointerException_0(){
  $fillInStackTrace();
}

function NullPointerException_1(message){
  RuntimeException_0.call(this, message);
}

defineSeed(471, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), NullPointerException_0, NullPointerException_1);
function $clinit_Number$__Digits(){
  $clinit_Number$__Digits = nullMethod;
  digits_0 = initValues(_3C_classLit, makeCastMap([Q$Serializable]), -1, [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122]);
}

var digits_0;
function Short_0(value){
  this.value_0 = value;
}

function valueOf_3(s){
  var rebase, result;
  if (s > -129 && s < 128) {
    rebase = s + 128;
    result = ($clinit_Short$BoxedValues() , boxedValues_4)[rebase];
    !result && (result = boxedValues_4[rebase] = new Short_0(s));
    return result;
  }
  return new Short_0(s);
}

defineSeed(474, 455, makeCastMap([Q$Serializable, Q$Comparable, Q$Number, Q$Short]), Short_0);
_.equals$ = function equals_12(o){
  return instanceOf(o, Q$Short) && dynamicCast(o, Q$Short).value_0 == this.value_0;
}
;
_.hashCode$ = function hashCode_14(){
  return this.value_0;
}
;
_.toString$ = function toString_19(){
  return '' + this.value_0;
}
;
_.value_0 = 0;
function $clinit_Short$BoxedValues(){
  $clinit_Short$BoxedValues = nullMethod;
  boxedValues_4 = initDim(_3Ljava_lang_Short_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Short, 256, 0);
}

var boxedValues_4;
function StackTraceElement_0(methodName){
  this.className_0 = 'Unknown';
  this.methodName = methodName;
  this.lineNumber = -1;
}

defineSeed(476, 1, makeCastMap([Q$Serializable, Q$StackTraceElement]), StackTraceElement_0);
_.toString$ = function toString_20(){
  return this.className_0 + '.' + this.methodName + '(Unknown Source' + (this.lineNumber >= 0?':' + this.lineNumber:'') + ')';
}
;
_.className_0 = null;
_.lineNumber = 0;
_.methodName = null;
function $charAt(this$static, index){
  return this$static.charCodeAt(index);
}

function $equals(this$static, other){
  if (!instanceOf(other, Q$String)) {
    return false;
  }
  return String(this$static) == other;
}

function $equalsIgnoreCase(this$static, other){
  if (other == null)
    return false;
  return this$static == other || this$static.toLowerCase() == other.toLowerCase();
}

function $indexOf_0(this$static, str){
  return this$static.indexOf(str);
}

function $substring(this$static, beginIndex){
  return this$static.substr(beginIndex, this$static.length - beginIndex);
}

function $substring_0(this$static, beginIndex, endIndex){
  return this$static.substr(beginIndex, endIndex - beginIndex);
}

--></script>
<script><!--
function $trim(this$static){
  if (this$static.length == 0 || this$static[0] > ' ' && this$static[this$static.length - 1] > ' ') {
    return this$static;
  }
  var r1 = this$static.replace(/^(\s*)/, '');
  var r2 = r1.replace(/\s*$/, '');
  return r2;
}

function __valueOf(x, start, end){
  x = x.slice(start, end);
  return String.fromCharCode.apply(null, x);
}

function fromCodePoint(codePoint){
  var hiSurrogate, loSurrogate;
  if (codePoint >= 65536) {
    hiSurrogate = 55296 + (codePoint - 65536 >> 10 & 1023) & 65535;
    loSurrogate = 56320 + (codePoint - 65536 & 1023) & 65535;
    return String.fromCharCode(hiSurrogate) + String.fromCharCode(loSurrogate);
  }
   else {
    return String.fromCharCode(codePoint & 65535);
  }
}

function valueOf_4(x){
  return String.fromCharCode(x);
}

_ = String.prototype;
_.castableTypeMap$ = makeCastMap([Q$String, Q$Serializable, Q$CharSequence, Q$Comparable]);
_.equals$ = function equals_13(other){
  return $equals(this, other);
}
;
_.hashCode$ = function hashCode_15(){
  return getHashCode_0(this);
}
;
_.toString$ = _.toString;
function $clinit_String$HashCache(){
  $clinit_String$HashCache = nullMethod;
  back_0 = {};
  front = {};
}

function compute(str){
  var hashCode, i, n, nBatch;
  hashCode = 0;
  n = str.length;
  nBatch = n - 4;
  i = 0;
  while (i < nBatch) {
    hashCode = str.charCodeAt(i + 3) + 31 * (str.charCodeAt(i + 2) + 31 * (str.charCodeAt(i + 1) + 31 * (str.charCodeAt(i) + 31 * hashCode))) | 0;
    i += 4;
  }
  while (i < n) {
    hashCode = hashCode * 31 + $charAt(str, i++);
  }
  return hashCode | 0;
}

function getHashCode_0(str){
  $clinit_String$HashCache();
  var key = ':' + str;
  var result = front[key];
  if (result != null) {
    return result;
  }
  result = back_0[key];
  result == null && (result = compute(str));
  increment();
  return front[key] = result;
}

function increment(){
  if (count_0 == 256) {
    back_0 = front;
    front = {};
    count_0 = 0;
  }
  ++count_0;
}

var back_0, count_0 = 0, front;
function $$init(this$static){
  this$static.data = $createData();
}

function $append_2(this$static, x){
  $append_0(this$static.data, x);
  return this$static;
}

function StringBuffer_0(){
  $$init(this);
}

defineSeed(478, 1, makeCastMap([Q$CharSequence]), StringBuffer_0);
_.toString$ = function toString_21(){
  return $toString(this.data);
}
;
function $$init_0(this$static){
  this$static.data = $createData();
}

function $append_4(this$static, x){
  $append_0(this$static.data, x);
  return this$static;
}

function StringBuilder_0(){
  $$init_0(this);
}

function StringBuilder_1(s){
  $$init_0(this);
  $append_0(this.data, s);
}

defineSeed(479, 1, makeCastMap([Q$CharSequence]), StringBuilder_0, StringBuilder_1);
_.toString$ = function toString_22(){
  return $toString(this.data);
}
;
function identityHashCode(o){
  return o == null?0:instanceOf(o, Q$String)?getHashCode_0(dynamicCast(o, Q$String)):getHashCode(o);
}

function UnsupportedOperationException_0(){
  $fillInStackTrace();
}

function UnsupportedOperationException_1(message){
  RuntimeException_0.call(this, message);
}

defineSeed(481, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), UnsupportedOperationException_0, UnsupportedOperationException_1);
function $advanceToFind(iter, o){
  var t;
  while (iter.hasNext()) {
    t = iter.next_0();
    if (o == null?t == null:equals__devirtual$(o, t)) {
      return iter;
    }
  }
  return null;
}

function $toString_1(this$static){
  var comma, iter, sb, value;
  sb = new StringBuffer_0;
  comma = null;
  $append_0(sb.data, '[');
  iter = this$static.iterator();
  while (iter.hasNext()) {
    comma != null?($append_0(sb.data, comma) , sb):(comma = ', ');
    value = iter.next_0();
    $append_0(sb.data, value === this$static?'(this Collection)':'' + value);
  }
  $append_0(sb.data, ']');
  return $toString(sb.data);
}

defineSeed(483, 1, {});
_.add_0 = function add_1(o){
  throw new UnsupportedOperationException_1('Add not supported on this collection');
}
;
_.contains_0 = function contains(o){
  var iter;
  iter = $advanceToFind(this.iterator(), o);
  return !!iter;
}
;
_.toString$ = function toString_24(){
  return $toString_1(this);
}
;
function $implFindEntry(this$static, key, remove){
  var entry, iter, k;
  for (iter = new AbstractHashMap$EntrySetIterator_0(this$static.entrySet().this$0); $hasNext(iter.iter);) {
    entry = iter.last = dynamicCast($next_3(iter.iter), Q$Map$Entry);
    k = entry.getKey();
    if (key == null?k == null:equals__devirtual$(key, k)) {
      remove && $remove_8(iter);
      return entry;
    }
  }
  return null;
}

function $keySet(this$static){
  var entrySet;
  entrySet = new AbstractHashMap$EntrySet_0(this$static);
  return new AbstractMap$1_0(this$static, entrySet);
}

defineSeed(485, 1, makeCastMap([Q$Map]));
_.containsKey = function containsKey(key){
  return !!$implFindEntry(this, key, false);
}
;
_.equals$ = function equals_14(obj){
  var entry, entry$iterator, otherKey, otherMap, otherValue;
  if (obj === this) {
    return true;
  }
  if (!instanceOf(obj, Q$Map)) {
    return false;
  }
  otherMap = dynamicCast(obj, Q$Map);
  if (this.size_1() != otherMap.size_1()) {
    return false;
  }
  for (entry$iterator = new AbstractHashMap$EntrySetIterator_0(otherMap.entrySet().this$0); $hasNext(entry$iterator.iter);) {
    entry = entry$iterator.last = dynamicCast($next_3(entry$iterator.iter), Q$Map$Entry);
    otherKey = entry.getKey();
    otherValue = entry.getValue();
    if (!this.containsKey(otherKey)) {
      return false;
    }
    if (!equalsWithNullCheck(otherValue, this.get(otherKey))) {
      return false;
    }
  }
  return true;
}
;
_.get = function get_0(key){
  var entry;
  entry = $implFindEntry(this, key, false);
  return !entry?null:entry.getValue();
}
;
_.hashCode$ = function hashCode_16(){
  var entry, entry$iterator, hashCode;
  hashCode = 0;
  for (entry$iterator = new AbstractHashMap$EntrySetIterator_0(this.entrySet().this$0); $hasNext(entry$iterator.iter);) {
    entry = entry$iterator.last = dynamicCast($next_3(entry$iterator.iter), Q$Map$Entry);
    hashCode += entry.hashCode$();
    hashCode = ~~hashCode;
  }
  return hashCode;
}
;
_.put = function put(key, value){
  throw new UnsupportedOperationException_1('Put not supported on this map');
}
;
_.size_1 = function size_0(){
  return this.entrySet().this$0.size_0;
}
;
_.toString$ = function toString_25(){
  var comma, entry, iter, s;
  s = '{';
  comma = false;
  for (iter = new AbstractHashMap$EntrySetIterator_0(this.entrySet().this$0); $hasNext(iter.iter);) {
    entry = iter.last = dynamicCast($next_3(iter.iter), Q$Map$Entry);
    comma?(s += ', '):(comma = true);
    s += '' + entry.getKey();
    s += '=';
    s += '' + entry.getValue();
  }
  return s + '}';
}
;
function $addAllHashEntries(this$static, dest){
  var hashCodeMap = this$static.hashCodeMap;
  for (var hashCode in hashCodeMap) {
    var hashCodeInt = parseInt(hashCode, 10);
    if (hashCode == hashCodeInt) {
      var array = hashCodeMap[hashCodeInt];
      for (var i = 0, c = array.length; i < c; ++i) {
        dest.add_0(array[i]);
      }
    }
  }
}

function $addAllStringEntries(this$static, dest){
  var stringMap = this$static.stringMap;
  for (var key in stringMap) {
    if (key.charCodeAt(0) == 58) {
      var entry = new AbstractHashMap$MapEntryString_0(this$static, key.substring(1));
      dest.add_0(entry);
    }
  }
}

function $clearImpl(this$static){
  this$static.hashCodeMap = [];
  this$static.stringMap = {};
  this$static.nullSlotLive = false;
  this$static.nullSlot = null;
  this$static.size_0 = 0;
}

function $containsKey(this$static, key){
  return key == null?this$static.nullSlotLive:instanceOf(key, Q$String)?$hasStringValue(this$static, dynamicCast(key, Q$String)):$hasHashValue(this$static, key, this$static.getHashCode(key));
}

function $get_2(this$static, key){
  return key == null?this$static.nullSlot:instanceOf(key, Q$String)?$getStringValue(this$static, dynamicCast(key, Q$String)):$getHashValue(this$static, key, this$static.getHashCode(key));
}

function $getHashValue(this$static, key, hashCode){
  var array = this$static.hashCodeMap[hashCode];
  if (array) {
    for (var i = 0, c = array.length; i < c; ++i) {
      var entry = array[i];
      var entryKey = entry.getKey();
      if (this$static.equalsBridge(key, entryKey)) {
        return entry.getValue();
      }
    }
  }
  return null;
}

function $getStringValue(this$static, key){
  return this$static.stringMap[':' + key];
}

function $hasHashValue(this$static, key, hashCode){
  var array = this$static.hashCodeMap[hashCode];
  if (array) {
    for (var i = 0, c = array.length; i < c; ++i) {
      var entry = array[i];
      var entryKey = entry.getKey();
      if (this$static.equalsBridge(key, entryKey)) {
        return true;
      }
    }
  }
  return false;
}

function $hasStringValue(this$static, key){
  return ':' + key in this$static.stringMap;
}

function $put_0(this$static, key, value){
  return key == null?$putNullSlot(this$static, value):instanceOf(key, Q$String)?$putStringValue(this$static, dynamicCast(key, Q$String), value):$putHashValue(this$static, key, value, this$static.getHashCode(key));
}

function $putHashValue(this$static, key, value, hashCode){
  var array = this$static.hashCodeMap[hashCode];
  if (array) {
    for (var i = 0, c = array.length; i < c; ++i) {
      var entry = array[i];
      var entryKey = entry.getKey();
      if (this$static.equalsBridge(key, entryKey)) {
        var previous = entry.getValue();
        entry.setValue(value);
        return previous;
      }
    }
  }
   else {
    array = this$static.hashCodeMap[hashCode] = [];
  }
  var entry = new MapEntryImpl_0(key, value);
  array.push(entry);
  ++this$static.size_0;
  return null;
}

function $putNullSlot(this$static, value){
  var result;
  result = this$static.nullSlot;
  this$static.nullSlot = value;
  if (!this$static.nullSlotLive) {
    this$static.nullSlotLive = true;
    ++this$static.size_0;
  }
  return result;
}

function $putStringValue(this$static, key, value){
  var result, stringMap = this$static.stringMap;
  key = ':' + key;
  key in stringMap?(result = stringMap[key]):++this$static.size_0;
  stringMap[key] = value;
  return result;
}

function $remove_7(this$static, key){
  return key == null?$removeNullSlot(this$static):instanceOf(key, Q$String)?$removeStringValue(this$static, dynamicCast(key, Q$String)):$removeHashValue(this$static, key, this$static.getHashCode(key));
}

function $removeHashValue(this$static, key, hashCode){
  var array = this$static.hashCodeMap[hashCode];
  if (array) {
    for (var i = 0, c = array.length; i < c; ++i) {
      var entry = array[i];
      var entryKey = entry.getKey();
      if (this$static.equalsBridge(key, entryKey)) {
        array.length == 1?delete this$static.hashCodeMap[hashCode]:array.splice(i, 1);
        --this$static.size_0;
        return entry.getValue();
      }
    }
  }
  return null;
}

function $removeNullSlot(this$static){
  var result;
  result = this$static.nullSlot;
  this$static.nullSlot = null;
  if (this$static.nullSlotLive) {
    this$static.nullSlotLive = false;
    --this$static.size_0;
  }
  return result;
}

function $removeStringValue(this$static, key){
  var result, stringMap = this$static.stringMap;
  key = ':' + key;
  if (key in stringMap) {
    result = stringMap[key];
    --this$static.size_0;
    delete stringMap[key];
  }
  return result;
}

defineSeed(484, 485, makeCastMap([Q$Map]));
_.containsKey = function containsKey_0(key){
  return $containsKey(this, key);
}
;
_.entrySet = function entrySet_0(){
  return new AbstractHashMap$EntrySet_0(this);
}
;
_.equalsBridge = function equalsBridge(value1, value2){
  return this.equals(value1, value2);
}
;
_.get = function get_1(key){
  return $get_2(this, key);
}
;
_.put = function put_0(key, value){
  return $put_0(this, key, value);
}
;
_.size_1 = function size_1(){
  return this.size_0;
}
;
_.hashCodeMap = null;
_.nullSlot = null;
_.nullSlotLive = false;
_.size_0 = 0;
_.stringMap = null;
defineSeed(487, 483, makeCastMap([Q$Set]));
_.equals$ = function equals_15(o){
  var iter, other, otherItem;
  if (o === this) {
    return true;
  }
  if (!instanceOf(o, Q$Set)) {
    return false;
  }
  other = dynamicCast(o, Q$Set);
  if (other.size_1() != this.size_1()) {
    return false;
  }
  for (iter = other.iterator(); iter.hasNext();) {
    otherItem = iter.next_0();
    if (!this.contains_0(otherItem)) {
      return false;
    }
  }
  return true;
}
;
_.hashCode$ = function hashCode_17(){
  var hashCode, iter, next;
  hashCode = 0;
  for (iter = this.iterator(); iter.hasNext();) {
    next = iter.next_0();
    if (next != null) {
      hashCode += hashCode__devirtual$(next);
      hashCode = ~~hashCode;
    }
  }
  return hashCode;
}
;
function $contains(this$static, o){
  var entry, key, value;
  if (instanceOf(o, Q$Map$Entry)) {
    entry = dynamicCast(o, Q$Map$Entry);
    key = entry.getKey();
    if ($containsKey(this$static.this$0, key)) {
      value = $get_2(this$static.this$0, key);
      return this$static.this$0.equals(entry.getValue(), value);
    }
  }
  return false;
}

function AbstractHashMap$EntrySet_0(this$0){
  this.this$0 = this$0;
}

defineSeed(486, 487, makeCastMap([Q$Set]), AbstractHashMap$EntrySet_0);
_.contains_0 = function contains_0(o){
  return $contains(this, o);
}
;
_.iterator = function iterator_5(){
  return new AbstractHashMap$EntrySetIterator_0(this.this$0);
}
;
_.size_1 = function size_2(){
  return this.this$0.size_0;
}
;
_.this$0 = null;
function $next_2(this$static){
  return this$static.last = dynamicCast($next_3(this$static.iter), Q$Map$Entry);
}

function $remove_8(this$static){
  if (!this$static.last) {
    throw new IllegalStateException_1('Must call next() before remove().');
  }
   else {
    $remove_9(this$static.iter);
    $remove_7(this$static.this$0, this$static.last.getKey());
    this$static.last = null;
  }
}

function AbstractHashMap$EntrySetIterator_0(this$0){
  var list;
  this.this$0 = this$0;
  list = new ArrayList_0;
  this$0.nullSlotLive && $add_7(list, new AbstractHashMap$MapEntryNull_0(this$0));
  $addAllStringEntries(this$0, list);
  $addAllHashEntries(this$0, list);
  this.iter = new AbstractList$IteratorImpl_0(list);
}

defineSeed(488, 1, {}, AbstractHashMap$EntrySetIterator_0);
_.hasNext = function hasNext_2(){
  return $hasNext(this.iter);
}
;
_.next_0 = function next_3(){
  return $next_2(this);
}
;
_.iter = null;
_.last = null;
_.this$0 = null;
defineSeed(490, 1, makeCastMap([Q$Map$Entry]));
_.equals$ = function equals_16(other){
  var entry;
  if (instanceOf(other, Q$Map$Entry)) {
    entry = dynamicCast(other, Q$Map$Entry);
    if (equalsWithNullCheck(this.getKey(), entry.getKey()) && equalsWithNullCheck(this.getValue(), entry.getValue())) {
      return true;
    }
  }
  return false;
}
;
_.hashCode$ = function hashCode_18(){
  var keyHash, valueHash;
  keyHash = 0;
  valueHash = 0;
  this.getKey() != null && (keyHash = hashCode__devirtual$(this.getKey()));
  this.getValue() != null && (valueHash = hashCode__devirtual$(this.getValue()));
  return keyHash ^ valueHash;
}
;
_.toString$ = function toString_26(){
  return this.getKey() + '=' + this.getValue();
}
;
function AbstractHashMap$MapEntryNull_0(this$0){
  this.this$0 = this$0;
}

defineSeed(489, 490, makeCastMap([Q$Map$Entry]), AbstractHashMap$MapEntryNull_0);
_.getKey = function getKey(){
  return null;
}
;
_.getValue = function getValue_1(){
  return this.this$0.nullSlot;
}
;
_.setValue = function setValue(object){
  return $putNullSlot(this.this$0, object);
}
;
_.this$0 = null;
function AbstractHashMap$MapEntryString_0(this$0, key){
  this.this$0 = this$0;
  this.key = key;
}

defineSeed(491, 490, makeCastMap([Q$Map$Entry]), AbstractHashMap$MapEntryString_0);
_.getKey = function getKey_0(){
  return this.key;
}
;
_.getValue = function getValue_2(){
  return $getStringValue(this.this$0, this.key);
}
;
_.setValue = function setValue_0(object){
  return $putStringValue(this.this$0, this.key, object);
}
;
_.key = null;
_.this$0 = null;
function checkIndex(index, size){
  (index < 0 || index >= size) && indexOutOfBounds(index, size);
}

function indexOutOfBounds(index, size){
  throw new IndexOutOfBoundsException_1('Index: ' + index + ', Size: ' + size);
}

defineSeed(492, 483, makeCastMap([Q$List]));
_.add_1 = function add_2(index, element){
  throw new UnsupportedOperationException_1('Add not supported on this list');
}
;
_.add_0 = function add_3(obj){
  this.add_1(this.size_1(), obj);
  return true;
}
;
_.equals$ = function equals_17(o){
  var elem, elemOther, iter, iterOther, other;
  if (o === this) {
    return true;
  }
  if (!instanceOf(o, Q$List)) {
    return false;
  }
  other = dynamicCast(o, Q$List);
  if (this.size_1() != other.size_1()) {
    return false;
  }
  iter = new AbstractList$IteratorImpl_0(this);
  iterOther = other.iterator();
  while (iter.i < iter.this$0_0.size_1()) {
    elem = $next_3(iter);
    elemOther = $next_3(iterOther);
    if (!(elem == null?elemOther == null:equals__devirtual$(elem, elemOther))) {
      return false;
    }
  }
  return true;
}
;
_.hashCode$ = function hashCode_19(){
  var iter, k, obj;
  k = 1;
  iter = new AbstractList$IteratorImpl_0(this);
  while (iter.i < iter.this$0_0.size_1()) {
    obj = $next_3(iter);
    k = 31 * k + (obj == null?0:hashCode__devirtual$(obj));
    k = ~~k;
  }
  return k;
}
;
_.iterator = function iterator_6(){
  return new AbstractList$IteratorImpl_0(this);
}
;
_.listIterator = function listIterator(){
  return new AbstractList$ListIteratorImpl_0(this, 0);
}
;
_.listIterator_0 = function listIterator_0(from){
  return new AbstractList$ListIteratorImpl_0(this, from);
}
;
_.remove_3 = function remove_15(index){
  throw new UnsupportedOperationException_1('Remove not supported on this list');
}
;
function $hasNext(this$static){
  return this$static.i < this$static.this$0_0.size_1();
}

function $next_3(this$static){
  if (this$static.i >= this$static.this$0_0.size_1()) {
    throw new NoSuchElementException_0;
  }
  return this$static.this$0_0.get_0(this$static.last = this$static.i++);
}

function $remove_9(this$static){
  if (this$static.last < 0) {
    throw new IllegalStateException_0;
  }
  this$static.this$0_0.remove_3(this$static.last);
  this$static.i = this$static.last;
  this$static.last = -1;
}

function AbstractList$IteratorImpl_0(this$0){
  this.this$0_0 = this$0;
}

defineSeed(493, 1, {}, AbstractList$IteratorImpl_0);
_.hasNext = function hasNext_3(){
  return $hasNext(this);
}
;
_.next_0 = function next_4(){
  return $next_3(this);
}
;
_.i = 0;
_.last = -1;
_.this$0_0 = null;
function $previous(this$static){
  if (this$static.i <= 0) {
    throw new NoSuchElementException_0;
  }
  return this$static.this$0.get_0(this$static.last = --this$static.i);
}

function AbstractList$ListIteratorImpl_0(this$0, start){
  var size;
  this.this$0 = this$0;
  this.this$0_0 = this$0;
  size = this$0.size_1();
  (start < 0 || start > size) && indexOutOfBounds(start, size);
  this.i = start;
}

defineSeed(494, 493, {}, AbstractList$ListIteratorImpl_0);
_.this$0 = null;
function $iterator(this$static){
  var outerIter;
  outerIter = new AbstractHashMap$EntrySetIterator_0(this$static.val$entrySet.this$0);
  return new AbstractMap$1$1_0(outerIter);
}

function AbstractMap$1_0(this$0, val$entrySet){
  this.this$0 = this$0;
  this.val$entrySet = val$entrySet;
}

defineSeed(495, 487, makeCastMap([Q$Set]), AbstractMap$1_0);
_.contains_0 = function contains_1(key){
  return $containsKey(this.this$0, key);
}
;
_.iterator = function iterator_7(){
  return $iterator(this);
}
;
_.size_1 = function size_3(){
  return this.val$entrySet.this$0.size_0;
}
;
_.this$0 = null;
_.val$entrySet = null;
function AbstractMap$1$1_0(val$outerIter){
  this.val$outerIter = val$outerIter;
}

defineSeed(496, 1, {}, AbstractMap$1$1_0);
_.hasNext = function hasNext_4(){
  return $hasNext(this.val$outerIter.iter);
}
;
_.next_0 = function next_5(){
  var entry;
  entry = $next_2(this.val$outerIter);
  return entry.getKey();
}
;
_.val$outerIter = null;
function $add_7(this$static, o){
  setCheck(this$static.array, this$static.size_0++, o);
  return true;
}

function $clear_1(this$static){
  this$static.array = initDim(_3Ljava_lang_Object_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Object, 0, 0);
  this$static.size_0 = 0;
}

function $get_3(this$static, index){
  checkIndex(index, this$static.size_0);
  return this$static.array[index];
}

function $indexOf_1(this$static, o, index){
  for (; index < this$static.size_0; ++index) {
    if (equalsWithNullCheck(o, this$static.array[index])) {
      return index;
    }
  }
  return -1;
}

function $remove_10(this$static, index){
  var previous;
  previous = (checkIndex(index, this$static.size_0) , this$static.array[index]);
  splice(this$static.array, index, 1);
  --this$static.size_0;
  return previous;
}

function $remove_11(this$static, o){
  var i;
  i = $indexOf_1(this$static, o, 0);
  if (i == -1) {
    return false;
  }
  $remove_10(this$static, i);
  return true;
}

function $set_1(this$static, index, o){
  var previous;
  previous = (checkIndex(index, this$static.size_0) , this$static.array[index]);
  setCheck(this$static.array, index, o);
  return previous;
}

function ArrayList_0(){
  this.array = initDim(_3Ljava_lang_Object_2_classLit, makeCastMap([Q$Serializable, Q$Object_$1]), Q$Object, 0, 0);
}

function splice(array, index, deleteCount){
  array.splice(index, deleteCount);
}

function splice_0(array, index, deleteCount, value){
  array.splice(index, deleteCount, value);
}

defineSeed(497, 492, makeCastMap([Q$Serializable, Q$List]), ArrayList_0);
_.add_1 = function add_4(index, o){
  (index < 0 || index > this.size_0) && indexOutOfBounds(index, this.size_0);
  splice_0(this.array, index, 0, o);
  ++this.size_0;
}
;
_.add_0 = function add_5(o){
  return $add_7(this, o);
}
;
_.contains_0 = function contains_2(o){
  return $indexOf_1(this, o, 0) != -1;
}
;
_.get_0 = function get_2(index){
  return $get_3(this, index);
}
;
_.remove_3 = function remove_18(index){
  return $remove_10(this, index);
}
;
_.size_1 = function size_4(){
  return this.size_0;
}
;
_.size_0 = 0;
function $clinit_Collections(){
  $clinit_Collections = nullMethod;
  EMPTY_LIST = new Collections$EmptyList_0;
}

var EMPTY_LIST;
function Collections$EmptyList_0(){
}

defineSeed(499, 492, makeCastMap([Q$Serializable, Q$List]), Collections$EmptyList_0);
_.contains_0 = function contains_3(object){
  return false;
}
;
_.get_0 = function get_3(location_0){
  throw new IndexOutOfBoundsException_0;
}
;
_.size_1 = function size_5(){
  return 0;
}
;
function HashMap_0(){
  $clearImpl(this);
}

defineSeed(501, 484, makeCastMap([Q$Serializable, Q$Map]), HashMap_0);
_.equals = function equals_18(value1, value2){
  return maskUndefined(value1) === maskUndefined(value2) || value1 != null && equals__devirtual$(value1, value2);
}
;
_.getHashCode = function getHashCode_1(key){
  return ~~hashCode__devirtual$(key);
}
;
function $add_8(this$static, o){
  var old;
  old = $put_0(this$static.map, o, this$static);
  return old == null;
}

function $contains_0(this$static, o){
  return $containsKey(this$static.map, o);
}

function $remove_12(this$static, o){
  return $remove_7(this$static.map, o) != null;
}

function HashSet_0(){
  this.map = new HashMap_0;
}

defineSeed(502, 487, makeCastMap([Q$Serializable, Q$Set]), HashSet_0);
_.add_0 = function add_6(o){
  return $add_8(this, o);
}
;
_.contains_0 = function contains_4(o){
  return $containsKey(this.map, o);
}
;
_.iterator = function iterator_8(){
  return $iterator($keySet(this.map));
}
;
_.size_1 = function size_6(){
  return this.map.size_0;
}
;
_.toString$ = function toString_27(){
  return $toString_1($keySet(this.map));
}
;
_.map = null;
function IdentityHashMap_0(){
  $clearImpl(this);
}

defineSeed(503, 484, makeCastMap([Q$Serializable, Q$Map]), IdentityHashMap_0);
_.equals$ = function equals_19(obj){
  var entry, entry$iterator, otherKey, otherMap, otherValue;
  if (obj === this) {
    return true;
  }
  if (!instanceOf(obj, Q$Map)) {
    return false;
  }
  otherMap = dynamicCast(obj, Q$Map);
  if (this.size_0 != otherMap.size_1()) {
    return false;
  }
  for (entry$iterator = new AbstractHashMap$EntrySetIterator_0(otherMap.entrySet().this$0); $hasNext(entry$iterator.iter);) {
    entry = entry$iterator.last = dynamicCast($next_3(entry$iterator.iter), Q$Map$Entry);
    otherKey = entry.getKey();
    otherValue = entry.getValue();
    if (!(otherKey == null?this.nullSlotLive:instanceOf(otherKey, Q$String)?':' + dynamicCast(otherKey, Q$String) in this.stringMap:$hasHashValue(this, otherKey, getHashCode(otherKey)))) {
      return false;
    }
    if (maskUndefined(otherValue) !== maskUndefined(otherKey == null?this.nullSlot:instanceOf(otherKey, Q$String)?$getStringValue(this, dynamicCast(otherKey, Q$String)):$getHashValue(this, otherKey, getHashCode(otherKey)))) {
      return false;
    }
  }
  return true;
}
;
_.equals = function equals_20(value1, value2){
  return maskUndefined(value1) === maskUndefined(value2);
}
;
_.getHashCode = function getHashCode_2(key){
  return getHashCode(key);
}
;
_.hashCode$ = function hashCode_20(){
  var entry, entry$iterator, hashCode;
  hashCode = 0;
  for (entry$iterator = new AbstractHashMap$EntrySetIterator_0((new AbstractHashMap$EntrySet_0(this)).this$0); $hasNext(entry$iterator.iter);) {
    entry = entry$iterator.last = dynamicCast($next_3(entry$iterator.iter), Q$Map$Entry);
    hashCode += identityHashCode(entry.getKey());
    hashCode += identityHashCode(entry.getValue());
  }
  return hashCode;
}
;
function MapEntryImpl_0(key, value){
  this.key = key;
  this.value_0 = value;
}

defineSeed(504, 490, makeCastMap([Q$Map$Entry]), MapEntryImpl_0);
_.getKey = function getKey_1(){
  return this.key;
}
;
_.getValue = function getValue_3(){
  return this.value_0;
}
;
_.setValue = function setValue_1(value){
  var old;
  old = this.value_0;
  this.value_0 = value;
  return old;
}
;
_.key = null;
_.value_0 = null;
function NoSuchElementException_0(){
  $fillInStackTrace();
}

defineSeed(505, 147, makeCastMap([Q$Serializable, Q$RuntimeException, Q$Throwable]), NoSuchElementException_0);
function equalsWithNullCheck(a, b){
  return maskUndefined(a) === maskUndefined(b) || a != null && equals__devirtual$(a, b);
}

var $entry = entry_0;
function gwtOnLoad(errFn, modName, modBase, softPermutationId){
  $moduleName = modName;
  $moduleBase = modBase;
  if (errFn)
    try {
      $entry(init)();
    }
     catch (e) {
      errFn(modName);
    }
   else {
    $entry(init)();
  }
}

--></script>
<script><!--
var Ljava_lang_Object_2_classLit = createForClass('java.lang.', 'Object', 1), Lcom_google_gwt_core_client_JavaScriptObject_2_classLit = createForClass('com.google.gwt.core.client.', 'JavaScriptObject$', 150), _3I_classLit = createForArray('', '[I', 507), Lcom_google_gwt_core_client_impl_AsyncFragmentLoader_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'AsyncFragmentLoader', 155), _3Ljava_lang_Object_2_classLit = createForArray('[Ljava.lang.', 'Object;', 508), _3_3Ljava_lang_Object_2_classLit = createForArray('[[Ljava.lang.', 'Object;', 509), _3Z_classLit = createForArray('', '[Z', 510), Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$LoadTerminatedHandler_2_classLit = createForInterface('com.google.gwt.core.client.impl.', 'AsyncFragmentLoader$LoadTerminatedHandler'), _3Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$LoadTerminatedHandler_2_classLit = createForArray('[Lcom.google.gwt.core.client.impl.', 'AsyncFragmentLoader$LoadTerminatedHandler;', 511), Lcom_google_gwt_core_client_RunAsyncCallback_2_classLit = createForInterface('com.google.gwt.core.client.', 'RunAsyncCallback'), _3Lcom_google_gwt_core_client_RunAsyncCallback_2_classLit = createForArray('[Lcom.google.gwt.core.client.', 'RunAsyncCallback;', 512), Ljava_lang_Throwable_2_classLit = createForClass('java.lang.', 'Throwable', 149), Ljava_lang_Exception_2_classLit = createForClass('java.lang.', 'Exception', 148), Ljava_lang_RuntimeException_2_classLit = createForClass('java.lang.', 'RuntimeException', 147), Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$HttpDownloadFailure_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'AsyncFragmentLoader$HttpDownloadFailure', 158), Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$HttpInstallFailure_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'AsyncFragmentLoader$HttpInstallFailure', 159), Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$BoundedIntQueue_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'AsyncFragmentLoader$BoundedIntQueue', 157), Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$ResetAfterDownloadFailure_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'AsyncFragmentLoader$ResetAfterDownloadFailure', 160), Lcom_google_gwt_core_client_impl_AsyncFragmentLoader$1_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'AsyncFragmentLoader$1', 156), Ljava_lang_StackTraceElement_2_classLit = createForClass('java.lang.', 'StackTraceElement', 476), _3Ljava_lang_StackTraceElement_2_classLit = createForArray('[Ljava.lang.', 'StackTraceElement;', 513), Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit = createForClass('com.google.gwt.lang.', 'LongLibBase$LongEmul', 282), _3Lcom_google_gwt_lang_LongLibBase$LongEmul_2_classLit = createForArray('[Lcom.google.gwt.lang.', 'LongLibBase$LongEmul;', 514), Lcom_google_gwt_lang_SeedUtil_2_classLit = createForClass('com.google.gwt.lang.', 'SeedUtil', 283), Ljava_lang_Enum_2_classLit = createForClass('java.lang.', 'Enum', 116), Ljava_lang_Boolean_2_classLit = createForClass('java.lang.', 'Boolean', 453), Ljava_lang_Number_2_classLit = createForClass('java.lang.', 'Number', 455), Ljava_lang_Byte_2_classLit = createForClass('java.lang.', 'Byte', 454), _3Ljava_lang_Byte_2_classLit = createForArray('[Ljava.lang.', 'Byte;', 515), _3C_classLit = createForArray('', '[C', 516), Ljava_lang_Character_2_classLit = createForClass('java.lang.', 'Character', 457), _3Ljava_lang_Character_2_classLit = createForArray('[Ljava.lang.', 'Character;', 517), Ljava_lang_Class_2_classLit = createForClass('java.lang.', 'Class', 459), Ljava_lang_Double_2_classLit = createForClass('java.lang.', 'Double', 461), Ljava_lang_Float_2_classLit = createForClass('java.lang.', 'Float', 462), Ljava_lang_Integer_2_classLit = createForClass('java.lang.', 'Integer', 466), _3Ljava_lang_Integer_2_classLit = createForArray('[Ljava.lang.', 'Integer;', 518), Ljava_lang_Long_2_classLit = createForClass('java.lang.', 'Long', 468), _3Ljava_lang_Long_2_classLit = createForArray('[Ljava.lang.', 'Long;', 519), Ljava_lang_Short_2_classLit = createForClass('java.lang.', 'Short', 474), _3Ljava_lang_Short_2_classLit = createForArray('[Ljava.lang.', 'Short;', 520), Ljava_lang_String_2_classLit = createForClass('java.lang.', 'String', 2), _3Ljava_lang_String_2_classLit = createForArray('[Ljava.lang.', 'String;', 521), Ljava_lang_ClassCastException_2_classLit = createForClass('java.lang.', 'ClassCastException', 460), Ljava_lang_StringBuilder_2_classLit = createForClass('java.lang.', 'StringBuilder', 479), Ljava_lang_ArrayStoreException_2_classLit = createForClass('java.lang.', 'ArrayStoreException', 452), Lcom_google_gwt_core_client_JavaScriptException_2_classLit = createForClass('com.google.gwt.core.client.', 'JavaScriptException', 146), Lcom_google_gwt_event_shared_HandlerManager_2_classLit = createForClass('com.google.gwt.event.shared.', 'HandlerManager', 240), Lcom_google_web_bindery_event_shared_EventBus_2_classLit = createForClass('com.google.web.bindery.event.shared.', 'EventBus', 243), Lcom_google_web_bindery_event_shared_SimpleEventBus_2_classLit = createForClass('com.google.web.bindery.event.shared.', 'SimpleEventBus', 242), Lcom_google_gwt_event_shared_HandlerManager$Bus_2_classLit = createForClass('com.google.gwt.event.shared.', 'HandlerManager$Bus', 241), Lcom_google_web_bindery_event_shared_SimpleEventBus$1_2_classLit = createForClass('com.google.web.bindery.event.shared.', 'SimpleEventBus$1', 448), Lcom_google_web_bindery_event_shared_SimpleEventBus$2_2_classLit = createForClass('com.google.web.bindery.event.shared.', 'SimpleEventBus$2', 449), Lcom_arsl_client_AppController_2_classLit = createForClass('com.arsl.client.', 'AppController', 3), Lcom_arsl_client_AppController$1_2_classLit = createForClass('com.arsl.client.', 'AppController$1', 4), Lcom_arsl_client_AppController$2_2_classLit = createForClass('com.arsl.client.', 'AppController$2', 5), Lcom_arsl_client_AppController$3_2_classLit = createForClass('com.arsl.client.', 'AppController$3', 6), Lcom_arsl_client_AppController$4_2_classLit = createForClass('com.arsl.client.', 'AppController$4', 7), Lcom_google_gwt_user_client_rpc_impl_RemoteServiceProxy_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'RemoteServiceProxy', 10), Lcom_arsl_client_PaperaziService_1Proxy_2_classLit = createForClass('com.arsl.client.', 'PaperaziService_Proxy', 9), Lcom_google_gwt_user_client_rpc_impl_RemoteServiceProxy$ServiceHelper_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'RemoteServiceProxy$ServiceHelper', 341), Lcom_google_gwt_user_client_rpc_InvocationException_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'InvocationException', 322), Lcom_google_gwt_user_client_rpc_ServiceDefTarget$NoServiceEntryPointSpecifiedException_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'ServiceDefTarget$NoServiceEntryPointSpecifiedException', 327), Lcom_google_gwt_user_client_ui_UIObject_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'UIObject', 41), Lcom_google_gwt_user_client_ui_Widget_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'Widget', 40), Lcom_google_gwt_user_client_ui_Panel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'Panel', 359), Lcom_google_gwt_user_client_ui_ComplexPanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'ComplexPanel', 358), Lcom_google_gwt_user_client_ui_AbsolutePanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'AbsolutePanel', 357), Lcom_google_gwt_user_client_ui_RootPanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'RootPanel', 404), Lcom_google_gwt_user_client_ui_RootPanel$DefaultRootPanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'RootPanel$DefaultRootPanel', 407), Lcom_google_gwt_user_client_ui_RootPanel$1_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'RootPanel$1', 405), Lcom_google_gwt_user_client_ui_RootPanel$2_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'RootPanel$2', 406), Lcom_google_web_bindery_event_shared_UmbrellaException_2_classLit = createForClass('com.google.web.bindery.event.shared.', 'UmbrellaException', 246), Lcom_google_gwt_event_shared_UmbrellaException_2_classLit = createForClass('com.google.gwt.event.shared.', 'UmbrellaException', 245), Lcom_google_gwt_user_client_ui_AttachDetachException_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'AttachDetachException', 360), Lcom_google_gwt_user_client_ui_AttachDetachException$1_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'AttachDetachException$1', 361), Lcom_google_gwt_user_client_ui_AttachDetachException$2_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'AttachDetachException$2', 362), Ljava_lang_ArithmeticException_2_classLit = createForClass('java.lang.', 'ArithmeticException', 451), Lcom_google_gwt_core_client_impl_LoadingStrategyBase_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'LoadingStrategyBase', 163), Lcom_google_gwt_core_client_impl_XhrLoadingStrategy_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'XhrLoadingStrategy', 175), Lcom_google_gwt_core_client_impl_XhrLoadingStrategy$XhrDownloadStrategy$1_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'XhrLoadingStrategy$XhrDownloadStrategy$1', 177), Lcom_google_gwt_core_client_impl_LoadingStrategyBase$RequestData_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'LoadingStrategyBase$RequestData', 165), Lcom_google_gwt_user_client_rpc_impl_SerializerBase_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'SerializerBase', 12), Lcom_arsl_client_PaperaziService_1TypeSerializer_2_classLit = createForClass('com.arsl.client.', 'PaperaziService_TypeSerializer', 11), Lcom_arsl_client_data_Content_2_classLit = createForClass('com.arsl.client.data.', 'Content', 13), _3Lcom_arsl_client_data_Content_2_classLit = createForArray('[Lcom.arsl.client.data.', 'Content;', 522), Lcom_arsl_client_data_PageView_2_classLit = createForClass('com.arsl.client.data.', 'PageView', 16), Lcom_arsl_client_data_Paper_2_classLit = createForClass('com.arsl.client.data.', 'Paper', 18), _3Lcom_arsl_client_data_Paper_2_classLit = createForArray('[Lcom.arsl.client.data.', 'Paper;', 523), Lcom_arsl_client_data_Tag_2_classLit = createForClass('com.arsl.client.data.', 'Tag', 21), Lcom_arsl_client_data_TagView_2_classLit = createForClass('com.arsl.client.data.', 'TagView', 22), _3Lcom_arsl_client_data_TagView_2_classLit = createForArray('[Lcom.arsl.client.data.', 'TagView;', 524), _3Lcom_arsl_client_data_Tag_2_classLit = createForArray('[Lcom.arsl.client.data.', 'Tag;', 525), Lcom_google_gwt_user_client_rpc_IncompatibleRemoteServiceException_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'IncompatibleRemoteServiceException', 320), Lcom_google_gwt_user_client_rpc_RpcTokenException_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'RpcTokenException', 324), Lcom_google_gwt_user_client_rpc_XsrfToken_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'XsrfToken', null), Ljava_sql_Date_2_classLit = createForClass('java.sql.', 'Date', 482), Ljava_util_AbstractMap_2_classLit = createForClass('java.util.', 'AbstractMap', 485), Ljava_util_AbstractHashMap_2_classLit = createForClass('java.util.', 'AbstractHashMap', 484), Ljava_util_HashMap_2_classLit = createForClass('java.util.', 'HashMap', 501), Ljava_util_AbstractCollection_2_classLit = createForClass('java.util.', 'AbstractCollection', 483), Ljava_util_AbstractSet_2_classLit = createForClass('java.util.', 'AbstractSet', 487), Ljava_util_AbstractHashMap$EntrySet_2_classLit = createForClass('java.util.', 'AbstractHashMap$EntrySet', 486), Ljava_util_AbstractHashMap$EntrySetIterator_2_classLit = createForClass('java.util.', 'AbstractHashMap$EntrySetIterator', 488), Ljava_util_AbstractMapEntry_2_classLit = createForClass('java.util.', 'AbstractMapEntry', 490), Ljava_util_AbstractHashMap$MapEntryNull_2_classLit = createForClass('java.util.', 'AbstractHashMap$MapEntryNull', 489), Ljava_util_AbstractHashMap$MapEntryString_2_classLit = createForClass('java.util.', 'AbstractHashMap$MapEntryString', 491), Ljava_util_AbstractMap$1_2_classLit = createForClass('java.util.', 'AbstractMap$1', 495), Ljava_util_AbstractMap$1$1_2_classLit = createForClass('java.util.', 'AbstractMap$1$1', 496), Ljava_util_HashSet_2_classLit = createForClass('java.util.', 'HashSet', 502), Lcom_google_gwt_user_client_ui_Composite_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'Composite', 39), Lcom_arsl_client_view_SignInPanel_2_classLit = createForClass('com.arsl.client.view.', 'SignInPanel', 58), Lcom_arsl_client_presenter_SignInPanelPresenter_2_classLit = createForClass('com.arsl.client.presenter.', 'SignInPanelPresenter', 36), Lcom_arsl_client_presenter_SignInPanelPresenter$1_2_classLit = createForClass('com.arsl.client.presenter.', 'SignInPanelPresenter$1', 37), Lcom_google_gwt_core_client_impl_StackTraceCreator$Collector_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'StackTraceCreator$Collector', 171), Lcom_google_gwt_core_client_Scheduler_2_classLit = createForClass('com.google.gwt.core.client.', 'Scheduler', 154), Lcom_google_gwt_core_client_impl_SchedulerImpl_2_classLit = createForClass('com.google.gwt.core.client.impl.', 'SchedulerImpl', 166), Lcom_google_gwt_i18n_client_LocaleInfo_2_classLit = createForClass('com.google.gwt.i18n.client.', 'LocaleInfo', 266), Lcom_google_gwt_i18n_client_HasDirection$Direction_2_classLit = createForEnum('com.google.gwt.i18n.client.', 'HasDirection$Direction', 265, values_6), _3Lcom_google_gwt_i18n_client_HasDirection$Direction_2_classLit = createForArray('[Lcom.google.gwt.i18n.client.', 'HasDirection$Direction;', 526), Lcom_google_web_bindery_event_shared_Event_2_classLit = createForClass('com.google.web.bindery.event.shared.', 'Event', 29), Lcom_google_gwt_event_shared_GwtEvent_2_classLit = createForClass('com.google.gwt.event.shared.', 'GwtEvent', 28), Lcom_google_web_bindery_event_shared_Event$Type_2_classLit = createForClass('com.google.web.bindery.event.shared.', 'Event$Type', 228), Lcom_google_gwt_event_shared_GwtEvent$Type_2_classLit = createForClass('com.google.gwt.event.shared.', 'GwtEvent$Type', 227), Lcom_arsl_client_event_LoginEvent_2_classLit = createForClass('com.arsl.client.event.', 'LoginEvent', 30), Lcom_arsl_client_view_Banner_2_classLit = createForClass('com.arsl.client.view.', 'Banner', 38), Lcom_arsl_client_view_Banner$1_2_classLit = createForClass('com.arsl.client.view.', 'Banner$1', 42), Ljava_lang_NullPointerException_2_classLit = createForClass('java.lang.', 'NullPointerException', 471), Ljava_lang_IllegalArgumentException_2_classLit = createForClass('java.lang.', 'IllegalArgumentException', 463), Ljava_lang_StringBuffer_2_classLit = createForClass('java.lang.', 'StringBuffer', 478), Lcom_google_gwt_user_client_Window$ClosingEvent_2_classLit = createForClass('com.google.gwt.user.client.', 'Window$ClosingEvent', 306), Lcom_google_gwt_user_client_Window$WindowHandlers_2_classLit = createForClass('com.google.gwt.user.client.', 'Window$WindowHandlers', 308), Ljava_lang_UnsupportedOperationException_2_classLit = createForClass('java.lang.', 'UnsupportedOperationException', 481), Lcom_google_gwt_user_client_impl_HistoryImpl_2_classLit = createForClass('com.google.gwt.user.client.impl.', 'HistoryImpl', 313), Lcom_google_gwt_user_client_impl_HistoryImplIE6_2_classLit = createForClass('com.google.gwt.user.client.impl.', 'HistoryImplIE6', 314), Lcom_google_gwt_event_shared_LegacyHandlerWrapper_2_classLit = createForClass('com.google.gwt.event.shared.', 'LegacyHandlerWrapper', 244), Lcom_arsl_client_view_SignInPanel_1SignInPanelUiBinderImpl$Widgets_2_classLit = createForClass('com.arsl.client.view.', 'SignInPanel_SignInPanelUiBinderImpl$Widgets', 59), Lcom_arsl_client_view_SignInPanel_1SignInPanelUiBinderImpl$Widgets$1_2_classLit = createForClass('com.arsl.client.view.', 'SignInPanel_SignInPanelUiBinderImpl$Widgets$1', 60), Ljava_lang_IllegalStateException_2_classLit = createForClass('java.lang.', 'IllegalStateException', 464), Lcom_google_gwt_user_client_ui_CellPanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'CellPanel', 368), Lcom_google_gwt_user_client_ui_HorizontalPanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'HorizontalPanel', 383), Lcom_google_gwt_user_client_ui_HasHorizontalAlignment$AutoHorizontalAlignmentConstant_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'HasHorizontalAlignment$AutoHorizontalAlignmentConstant', 380), Lcom_google_gwt_user_client_ui_HasHorizontalAlignment$HorizontalAlignmentConstant_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'HasHorizontalAlignment$HorizontalAlignmentConstant', 381), Lcom_google_gwt_user_client_ui_HasVerticalAlignment$VerticalAlignmentConstant_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'HasVerticalAlignment$VerticalAlignmentConstant', 382), Lcom_google_gwt_user_client_ui_LabelBase_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'LabelBase', 389), Lcom_google_gwt_user_client_ui_Label_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'Label', 388), Lcom_google_gwt_user_client_ui_FocusWidget_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'FocusWidget', 365), Lcom_google_gwt_user_client_ui_ButtonBase_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'ButtonBase', 364), Lcom_google_gwt_user_client_ui_Button_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'Button', 363), Lcom_google_gwt_user_client_impl_WindowImplIE$1_2_classLit = createForClass('com.google.gwt.user.client.impl.', 'WindowImplIE$1', 317), Lcom_google_gwt_event_logical_shared_CloseEvent_2_classLit = createForClass('com.google.gwt.event.logical.shared.', 'CloseEvent', 235), Lcom_google_gwt_user_client_ui_WidgetCollection_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'WidgetCollection', 415), _3Lcom_google_gwt_user_client_ui_Widget_2_classLit = createForArray('[Lcom.google.gwt.user.client.ui.', 'Widget;', 527), Lcom_google_gwt_user_client_ui_WidgetCollection$WidgetIterator_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'WidgetCollection$WidgetIterator', 416), Ljava_util_MapEntryImpl_2_classLit = createForClass('java.util.', 'MapEntryImpl', 504), Lcom_google_gwt_event_logical_shared_ValueChangeEvent_2_classLit = createForClass('com.google.gwt.event.logical.shared.', 'ValueChangeEvent', 239), Lcom_google_gwt_user_client_ui_DirectionalTextHelper_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'DirectionalTextHelper', 372), Lcom_google_gwt_event_dom_client_DomEvent_2_classLit = createForClass('com.google.gwt.event.dom.client.', 'DomEvent', 222), Lcom_google_gwt_event_dom_client_HumanInputEvent_2_classLit = createForClass('com.google.gwt.event.dom.client.', 'HumanInputEvent', 225), Lcom_google_gwt_event_dom_client_MouseEvent_2_classLit = createForClass('com.google.gwt.event.dom.client.', 'MouseEvent', 224), Lcom_google_gwt_event_dom_client_ClickEvent_2_classLit = createForClass('com.google.gwt.event.dom.client.', 'ClickEvent', 223), Lcom_google_gwt_event_dom_client_DomEvent$Type_2_classLit = createForClass('com.google.gwt.event.dom.client.', 'DomEvent$Type', 226), Lcom_google_gwt_user_client_rpc_SerializationException_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'SerializationException', 326), Lcom_google_gwt_dom_client_Style$TextAlign_2_classLit = createForEnum('com.google.gwt.dom.client.', 'Style$TextAlign', 201, values_3), _3Lcom_google_gwt_dom_client_Style$TextAlign_2_classLit = createForArray('[Lcom.google.gwt.dom.client.', 'Style$TextAlign;', 530), Lcom_google_gwt_dom_client_Style$TextAlign$1_2_classLit = createForEnum('com.google.gwt.dom.client.', 'Style$TextAlign$1', 202, null), Lcom_google_gwt_dom_client_Style$TextAlign$2_2_classLit = createForEnum('com.google.gwt.dom.client.', 'Style$TextAlign$2', 203, null), Lcom_google_gwt_dom_client_Style$TextAlign$3_2_classLit = createForEnum('com.google.gwt.dom.client.', 'Style$TextAlign$3', 204, null), Lcom_google_gwt_dom_client_Style$TextAlign$4_2_classLit = createForEnum('com.google.gwt.dom.client.', 'Style$TextAlign$4', 205, null), Lcom_google_gwt_user_client_ui_HTMLPanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'HTMLPanel', 375), Ljava_util_NoSuchElementException_2_classLit = createForClass('java.util.', 'NoSuchElementException', 505), Lcom_google_gwt_event_dom_client_PrivateMap_2_classLit = createForClass('com.google.gwt.event.dom.client.', 'PrivateMap', 233), Ljava_lang_IndexOutOfBoundsException_2_classLit = createForClass('java.lang.', 'IndexOutOfBoundsException', 465), Ljava_util_AbstractList_2_classLit = createForClass('java.util.', 'AbstractList', 492), Ljava_util_ArrayList_2_classLit = createForClass('java.util.', 'ArrayList', 497), Ljava_util_AbstractList$IteratorImpl_2_classLit = createForClass('java.util.', 'AbstractList$IteratorImpl', 493), Ljava_util_AbstractList$ListIteratorImpl_2_classLit = createForClass('java.util.', 'AbstractList$ListIteratorImpl', 494), Lcom_google_gwt_uibinder_client_LazyDomElement_2_classLit = createForClass('com.google.gwt.uibinder.client.', 'LazyDomElement', 295), Lcom_google_gwt_uibinder_client_UiBinderUtil$TempAttachment_2_classLit = createForClass('com.google.gwt.uibinder.client.', 'UiBinderUtil$TempAttachment', 297), Lcom_google_gwt_user_client_ui_VerticalPanel_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'VerticalPanel', 414), Ljava_util_Collections$EmptyList_2_classLit = createForClass('java.util.', 'Collections$EmptyList', 499), Lcom_arsl_client_view_SignInPanel_1SignInPanelUiBinderImpl_1GenBundle_1default_1StaticClientBundleGenerator_2_classLit = createForClass('com.arsl.client.view.', 'SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator', 61), Lcom_arsl_client_view_SignInPanel_1SignInPanelUiBinderImpl_1GenBundle_1default_1StaticClientBundleGenerator$1_2_classLit = createForClass('com.arsl.client.view.', 'SignInPanel_SignInPanelUiBinderImpl_GenBundle_default_StaticClientBundleGenerator$1', 62), Lcom_google_gwt_safehtml_shared_OnlyToBeUsedInGeneratedCodeStringBlessedAsSafeHtml_2_classLit = createForClass('com.google.gwt.safehtml.shared.', 'OnlyToBeUsedInGeneratedCodeStringBlessedAsSafeHtml', 287), Lcom_google_gwt_safehtml_shared_SafeHtmlString_2_classLit = createForClass('com.google.gwt.safehtml.shared.', 'SafeHtmlString', 288), Lcom_google_gwt_user_client_ui_ValueBoxBase_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'ValueBoxBase', 394), Lcom_google_gwt_user_client_ui_TextBoxBase_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'TextBoxBase', 393), Lcom_google_gwt_user_client_ui_TextBox_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'TextBox', 392), Lcom_google_gwt_user_client_ui_ValueBoxBase$TextAlignment_2_classLit = createForEnum('com.google.gwt.user.client.ui.', 'ValueBoxBase$TextAlignment', 409, values_8), _3Lcom_google_gwt_user_client_ui_ValueBoxBase$TextAlignment_2_classLit = createForArray('[Lcom.google.gwt.user.client.ui.', 'ValueBoxBase$TextAlignment;', 531), Lcom_google_gwt_user_client_ui_ValueBoxBase$TextAlignment$1_2_classLit = createForEnum('com.google.gwt.user.client.ui.', 'ValueBoxBase$TextAlignment$1', 410, null), Lcom_google_gwt_user_client_ui_ValueBoxBase$TextAlignment$2_2_classLit = createForEnum('com.google.gwt.user.client.ui.', 'ValueBoxBase$TextAlignment$2', 411, null), Lcom_google_gwt_user_client_ui_ValueBoxBase$TextAlignment$3_2_classLit = createForEnum('com.google.gwt.user.client.ui.', 'ValueBoxBase$TextAlignment$3', 412, null), Lcom_google_gwt_user_client_ui_ValueBoxBase$TextAlignment$4_2_classLit = createForEnum('com.google.gwt.user.client.ui.', 'ValueBoxBase$TextAlignment$4', 413, null), Lcom_google_gwt_i18n_client_AutoDirectionHandler_2_classLit = createForClass('com.google.gwt.i18n.client.', 'AutoDirectionHandler', 258), Lcom_google_gwt_user_client_ui_PasswordTextBox_2_classLit = createForClass('com.google.gwt.user.client.ui.', 'PasswordTextBox', 391), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter', 342), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader', 343, values_7), _3Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader_2_classLit = createForArray('[Lcom.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader;', 532), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$1_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$1', 344, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$2_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$2', 347, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$3_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$3', 348, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$4_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$4', 349, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$5_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$5', 350, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$6_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$6', 351, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$7_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$7', 352, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$8_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$8', 353, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$9_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$9', 354, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$10_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$10', 345, null), Lcom_google_gwt_user_client_rpc_impl_RequestCallbackAdapter$ResponseReader$11_2_classLit = createForEnum('com.google.gwt.user.client.rpc.impl.', 'RequestCallbackAdapter$ResponseReader$11', 346, null), Lcom_google_gwt_http_client_Request_2_classLit = createForClass('com.google.gwt.http.client.', 'Request', 247), Lcom_google_gwt_http_client_Response_2_classLit = createForClass('com.google.gwt.http.client.', 'Response', 249), Lcom_google_gwt_http_client_Request$1_2_classLit = createForClass('com.google.gwt.http.client.', 'Request$1', 248), Lcom_google_gwt_user_client_Timer_2_classLit = createForClass('com.google.gwt.user.client.', 'Timer', 72), Lcom_google_gwt_http_client_Request$3_2_classLit = createForClass('com.google.gwt.http.client.', 'Request$3', 250), Lcom_google_gwt_user_client_Timer$1_2_classLit = createForClass('com.google.gwt.user.client.', 'Timer$1', 304), Lcom_google_gwt_user_client_rpc_impl_RpcStatsContext_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'RpcStatsContext', 355), Lcom_google_gwt_dom_client_StyleInjector$1_2_classLit = createForClass('com.google.gwt.dom.client.', 'StyleInjector$1', 218), Lcom_google_gwt_user_client_rpc_impl_AbstractSerializationStream_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'AbstractSerializationStream', 336), Lcom_google_gwt_user_client_rpc_impl_AbstractSerializationStreamWriter_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'AbstractSerializationStreamWriter', 338), Lcom_google_gwt_user_client_rpc_impl_ClientSerializationStreamWriter_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'ClientSerializationStreamWriter', 340), Lcom_google_gwt_http_client_RequestBuilder_2_classLit = createForClass('com.google.gwt.http.client.', 'RequestBuilder', 251), Lcom_google_gwt_http_client_RequestBuilder$Method_2_classLit = createForClass('com.google.gwt.http.client.', 'RequestBuilder$Method', 253), Lcom_google_gwt_http_client_RequestBuilder$1_2_classLit = createForClass('com.google.gwt.http.client.', 'RequestBuilder$1', 252), Lcom_google_gwt_http_client_RequestException_2_classLit = createForClass('com.google.gwt.http.client.', 'RequestException', 254), Lcom_google_gwt_text_shared_AbstractRenderer_2_classLit = createForClass('com.google.gwt.text.shared.', 'AbstractRenderer', 292), Lcom_google_gwt_text_shared_testing_PassthroughRenderer_2_classLit = createForClass('com.google.gwt.text.shared.testing.', 'PassthroughRenderer', 294), Lcom_google_gwt_text_shared_testing_PassthroughParser_2_classLit = createForClass('com.google.gwt.text.shared.testing.', 'PassthroughParser', 293), Lcom_google_gwt_user_client_rpc_RpcRequestBuilder_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'RpcRequestBuilder', 323), Lcom_google_gwt_http_client_RequestPermissionException_2_classLit = createForClass('com.google.gwt.http.client.', 'RequestPermissionException', 255), Ljava_util_IdentityHashMap_2_classLit = createForClass('java.util.', 'IdentityHashMap', 503), Lcom_google_gwt_user_client_rpc_StatusCodeException_2_classLit = createForClass('com.google.gwt.user.client.rpc.', 'StatusCodeException', 328), Lcom_google_gwt_user_client_rpc_impl_AbstractSerializationStreamReader_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'AbstractSerializationStreamReader', 337), Lcom_google_gwt_user_client_rpc_impl_ClientSerializationStreamReader_2_classLit = createForClass('com.google.gwt.user.client.rpc.impl.', 'ClientSerializationStreamReader', 339), Lcom_google_gwt_http_client_RequestTimeoutException_2_classLit = createForClass('com.google.gwt.http.client.', 'RequestTimeoutException', 256);
$stats && $stats({moduleName:'paperazi',sessionId:$sessionId,subSystem:'startup',evtGroup:'moduleStartup',millis:(new Date()).getTime(),type:'moduleEvalEnd'});
if ($wnd.paperazi) $wnd.paperazi.onScriptLoad();
--></script></body></html>
